(* Content-type: application/vnd.wolfram.mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Mathematica 12.1' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       158,          7]
NotebookDataLength[    120009,       2679]
NotebookOptionsPosition[     82590,       1999]
NotebookOutlinePosition[     83060,       2016]
CellTagsIndexPosition[     83017,       2013]
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{
Cell[TextData[{
 "New in: ",
 Cell["XX", "HistoryData",
  CellTags->"New",ExpressionUUID->"524b09a6-846f-4124-adfa-5d9cff78dd16"],
 " | Modified in: ",
 Cell[" ", "HistoryData",
  CellTags->"Modified",ExpressionUUID->"019cf0a4-420b-420e-9453-3db6461f9e5b"],
 " | Obsolete in: ",
 Cell[" ", "HistoryData",
  CellTags->"Obsolete",ExpressionUUID->"64aa51ff-022a-412f-8b86-a0b8f10b0670"],
 " | Excised in: ",
 Cell[" ", "HistoryData",
  CellTags->"Excised",ExpressionUUID->"82c075c2-2b93-47d4-8aca-7dd857d662d9"]
}], "History",
 CellID->1247902091,ExpressionUUID->"507c2116-ef7d-4f66-85ad-47bbf07d1504"],

Cell[CellGroupData[{

Cell["Categorization", "CategorizationSection",
 CellID->1122911449,ExpressionUUID->"85e1d00d-d9b8-43b9-b927-52cba8ad4c59"],

Cell["Tutorial", "Categorization",
 CellLabel->"Entity Type",
 CellID->686433507,ExpressionUUID->"78748b53-90a8-46be-abe0-b23b1761d0c8"],

Cell["CodeParser Package", "Categorization",
 CellLabel->"Paclet Name",
 CellID->605800465,ExpressionUUID->"d9364d05-45cd-420c-82b1-8307f4de44f6"],

Cell["CodeParser`", "Categorization",
 CellLabel->"Context",
 CellID->468444828,ExpressionUUID->"e8da193c-9af4-40a4-a498-0fe46edd6b7b"],

Cell["CodeParser/tutorial/ReleaseNotes", "Categorization",
 CellLabel->"URI",ExpressionUUID->"2271b414-6ca3-49d7-9406-56fa1e1adec6"]
}, Closed]],

Cell[CellGroupData[{

Cell["Keywords", "KeywordsSection",
 CellID->1427428552,ExpressionUUID->"98480eda-0f43-4d66-99e7-fc84fd66a2b6"],

Cell["XXXX", "Keywords",
 CellID->1251852827,ExpressionUUID->"416019cf-70a5-44b4-bea5-7f3e3b837693"]
}, Closed]],

Cell[CellGroupData[{

Cell["Details", "DetailsSection",
 CellID->307771771,ExpressionUUID->"29e4596c-b7af-4b17-8a28-c3e8a08499bc"],

Cell["XXXX", "Details",
 CellLabel->"Lead",
 CellID->218895918,ExpressionUUID->"2311482f-0482-4555-8f60-6c2d451666f4"],

Cell["XXXX", "Details",
 CellLabel->"Developers",
 CellID->350963985,ExpressionUUID->"bd02259f-0977-4216-a571-c929f9df94e9"],

Cell["XXXX", "Details",
 CellLabel->"Authors",
 CellID->795871300,ExpressionUUID->"43065996-218e-46be-b80e-3680a6a2022f"],

Cell["XXXX", "Details",
 CellLabel->"Feature Name",
 CellID->199739161,ExpressionUUID->"47e25afa-a939-436f-a95b-b99ff433277e"],

Cell["XXXX", "Details",
 CellLabel->"QA",
 CellID->40625308,ExpressionUUID->"e5e816c9-bef9-4752-a295-1c5b7288ed07"],

Cell["XXXX", "Details",
 CellLabel->"DA",
 CellID->357121918,ExpressionUUID->"1fecf6cb-6a32-46c7-996c-02334896834a"],

Cell["XXXX", "Details",
 CellLabel->"Docs",
 CellID->35949532,ExpressionUUID->"b676444c-5aaa-41a5-acd1-d4de6c3bd8dd"],

Cell["XXXX", "Details",
 CellLabel->"Features Page Notes",
 CellID->929432370,ExpressionUUID->"865437c1-2b15-4f6f-80af-ef7a821a01ae"],

Cell["XXXX", "Details",
 CellLabel->"Comments",
 CellID->240026365,ExpressionUUID->"d4de7d37-ebbd-4d92-a77d-cfb416ae5fab"]
}, Closed]],

Cell[CellGroupData[{

Cell["CodeParser Release Notes", "Title",
 CellChangeTimes->{
  3.7940464329098387`*^9, {3.794065431971314*^9, 3.794065434914809*^9}, {
   3.816535673142702*^9, 3.8165356734695683`*^9}},
 CellID->509267359,ExpressionUUID->"ef869736-cb00-41d2-84b8-4577b2664a6d"],

Cell[CellGroupData[{

Cell["0.7", "Section",
 CellChangeTimes->{{3.7551969166607637`*^9, 3.755196918380417*^9}, {
  3.755265502285562*^9, 3.755265502445648*^9}},
 CellID->991890208,ExpressionUUID->"e47fb6b5-1ec7-435f-a7ad-2633b06de611"],

Cell["Jan 9 2019", "Text",
 CellChangeTimes->{{3.756088093098597*^9, 3.756088095571097*^9}, {
  3.7561375736867943`*^9, 3.756137574565372*^9}},
 CellID->1930657842,ExpressionUUID->"0f137875-9cd7-4c1e-a21b-a72324059f1c"],

Cell["Separate Concrete Syntax Trees and Abstract Syntax Trees.", "Text",
 CellChangeTimes->{{3.755686525412969*^9, 3.7556865409334917`*^9}},
 CellID->425069744,ExpressionUUID->"8aaabbfc-b860-4571-8618-ddd9dceedf33"],

Cell["Moved unused generated files out of paclet layout.", "Text",
 CellChangeTimes->{{3.755264405185817*^9, 3.7552644154274893`*^9}, {
  3.7556864458933372`*^9, 3.755686456184741*^9}},
 CellID->1616577486,ExpressionUUID->"bf49a850-f4f0-401b-9b11-b62eae203322"],

Cell["Introduced expression depth and expression breadth warnings.", "Text",
 CellChangeTimes->{{3.755196923773508*^9, 3.7551969406784*^9}, {
  3.755686451276903*^9, 3.755686458472863*^9}},
 CellID->2002189005,ExpressionUUID->"854947fa-b82a-4e99-b4e5-473b94ae51ec"],

Cell["Added wl-ast as a Paclet Resource.", "Text",
 CellChangeTimes->{{3.755196923773508*^9, 3.755196949326386*^9}, {
  3.755686459888935*^9, 3.755686460961022*^9}},
 CellID->1869342192,ExpressionUUID->"d5e81a30-5d6c-4d21-9c2a-b505c0a2fef7"],

Cell["\<\
Added notes in README.md about Antivirus problems on Windows.\
\>", "Text",
 CellChangeTimes->{{3.755196923773508*^9, 3.755196951294343*^9}, {
  3.755686462985094*^9, 3.755686464145152*^9}},
 CellID->348465334,ExpressionUUID->"292a1793-15bf-4d75-891d-eb275487dc88"],

Cell["\<\
Added TernaryOperatorsToSymbol
Renamed LinearSyntaxBang\[Rule]PrefixLinearSyntaxBang
Added PrefixInvisiblePrefixScriptBase
Added PostfixInvisiblePostfixScriptBase
Renamed InfixImplicitPlus\[Rule]BinaryImplicitPlus
Added BinaryInvisibleTimes\
\>", "Text",
 CellChangeTimes->{{3.75526463473085*^9, 3.755264649099414*^9}, {
  3.755264693227603*^9, 3.75526481991696*^9}},
 CellID->468963169,ExpressionUUID->"3e00b5ed-c76d-4890-aca3-bb4c7403eb20"],

Cell[CellGroupData[{

Cell["Added WLCharacter", "Text",
 CellChangeTimes->{{3.755264650699502*^9, 3.7552646561559153`*^9}},
 CellID->598996893,ExpressionUUID->"c68803e2-3559-46fa-b136-fd2d1f6a9590"],

Cell["\<\
brenton2maclap:MacOSX-x86-64 brenton$ ./wl-ast -format characters
>>> 1+1
{
WLCharacter[49, \"1\", <|Source->{{1, 1}, {1, 1}}|>],
WLCharacter[43, \"+\", <|Source->{{1, 2}, {1, 2}}|>],
WLCharacter[49, \"1\", <|Source->{{1, 3}, {1, 3}}|>],
WLCharacter[-1, \"\", <|Source->{{2, 0}, {2, 0}}|>],
Nothing
}
brenton2maclap:MacOSX-x86-64 brenton$ \
\>", "Program",
 CellChangeTimes->{3.755264663098069*^9},
 CellID->2084927162,ExpressionUUID->"09f2f87a-73fc-4966-ab54-9b0a2da9e92a"]
}, Open  ]],

Cell["\<\
Added logic to use PacletResources to find wl-ast executable.\
\>", "Text",
 CellChangeTimes->{{3.75526484925877*^9, 3.755264866075994*^9}, {
  3.75568647701784*^9, 3.755686478505918*^9}},
 CellID->880143635,ExpressionUUID->"f469fccd-7d6a-4198-b5d1-6d6f646c7a06"],

Cell["\<\
Added ConcreteParse functions and start separating out concrete and abstract \
parse trees.\
\>", "Text",
 CellChangeTimes->{{3.755264881664678*^9, 3.755264900033585*^9}, {
  3.7556864808262043`*^9, 3.755686481962249*^9}},
 CellID->706712909,ExpressionUUID->"741801c9-bc34-408d-9ad2-3b6d25fbd364"],

Cell[CellGroupData[{

Cell["Added warning for input like:", "Text",
 CellChangeTimes->{{3.755265130037836*^9, 3.755265136414032*^9}, {
  3.75568648479428*^9, 3.755686484994416*^9}},
 CellID->2139293653,ExpressionUUID->"2f75cbd6-1a08-44e0-9b38-11264b744ce2"],

Cell["1.2.3", "Program",
 CellChangeTimes->{{3.75526514310098*^9, 3.755265165504917*^9}},
 CellID->1937207897,ExpressionUUID->"bd820781-76eb-419c-8535-582ba0d0dc76"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.8", "Section",
 CellChangeTimes->{{3.7551969166607637`*^9, 3.755196918380417*^9}, {
  3.755265502285562*^9, 3.755265502445648*^9}, {3.756463763811577*^9, 
  3.75646376397866*^9}},
 CellID->1336191714,ExpressionUUID->"483239a7-a6f7-4401-94d8-0d14ce27f47b"],

Cell["Feb 4, 2019", "Text",
 CellChangeTimes->{{3.756088093098597*^9, 3.756088095571097*^9}, {
  3.7561375736867943`*^9, 3.756137574565372*^9}, {3.756463766258667*^9, 
  3.756463766970649*^9}, {3.758107598543007*^9, 3.7581076004138823`*^9}},
 CellID->1137640519,ExpressionUUID->"3b8c20d6-a19a-467d-a5ee-9a4795175c14"],

Cell["Correct concrete and abstract \[OpenCurlyQuote] (Derivative) parsing", \
"Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.75646380908032*^9}, {
  3.7607074383872023`*^9, 3.760707438779069*^9}},
 CellID->1226865332,ExpressionUUID->"ea3cd1a2-4651-48cf-a308-dc25c43f67b6"],

Cell["Abstract parsing errors for a \[DirectedEdge] b \[DirectedEdge] c and a \
\[UndirectedEdge] b \[UndirectedEdge] c", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.7564638112316923`*^9}, 
   3.756464128338831*^9},
 CellID->1935140077,ExpressionUUID->"e9e1eed9-77fa-422c-bfa9-01f1aa46c951"],

Cell["Correctly abstract a \[Divides] b", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463813079793*^9}, 
   3.756464130018425*^9},
 CellID->259440324,ExpressionUUID->"460c8d7e-d5b8-486c-8e09-b3630b43da71"],

Cell["\<\
Add a stop-gap for parsing large expressions containing + and -
The concrete syntax tree was originally treating exprs of + and exprs of - as \
separate infix nodes. And then when abstracted, they would be combined. \
However, this is a problem for expressions that heavily alternate between + \
and -, e.g., a + b - c + d - e + f - g ... This would create a deeply nested \
expression and then the internal call to ToExpression would fail, even though \
the kernel can parse the originaly expression. The limitation of ToExpression \
is understood. Introduce a stop-gap that treats a + b - c + d - e + f - g ... \
as a single infix node, with InternalMinusNode for minus nodes. Eventually \
when we move to something like LibraryLink / WSTP, then we can move back to \
separate parse trees for + and -.\
\>", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463814440256*^9}, {
  3.756463894453877*^9, 3.756464131091764*^9}},
 CellID->1021722058,ExpressionUUID->"9c6f5150-5a7c-4bf4-a2dc-81abf6791a54"],

Cell["Use FindFile to help with things like ParseFile[\"Foo`\"]", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463815359591*^9}, 
   3.7564641329303617`*^9},
 CellID->803387394,ExpressionUUID->"d4361426-c3de-47a7-9024-ba43b497c949"],

Cell["Fix more cases for DeclarationName", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463816335821*^9}, 
   3.7564641338899*^9},
 CellID->1302242269,ExpressionUUID->"b41d027e-41e5-4506-b504-f0430c37193e"],

Cell["Add support for all set relation operators", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463817223855*^9}, 
   3.75646413486683*^9},
 CellID->1779968506,ExpressionUUID->"19b89087-baa1-4856-b9a0-be5a0b32eaaa"],

Cell["\<\
Fix certain infix longname operators being parsed as binary operators\
\>", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463818031958*^9}, 
   3.7564641360188293`*^9},
 CellID->1483477632,ExpressionUUID->"0f309741-7ce8-42c8-87ed-ad1dfa487133"],

Cell["\<\
Better error handling for ToInputFormString and ToFullFormString\
\>", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.756463820159713*^9}, 
   3.756464137026853*^9},
 CellID->523419354,ExpressionUUID->"a6b5f325-a7ce-4707-a4b0-c3fe64641414"],

Cell["Make sure to delete all new'd memory in wl-ast", "Text",
 CellChangeTimes->{{3.756463807027761*^9, 3.7564638212957363`*^9}, 
   3.756464138034957*^9},
 CellID->1016064566,ExpressionUUID->"e8cb699c-a61f-4bf8-a11a-8d86b927a274"],

Cell["Some work on documentation notebooks.", "Text",
 CellChangeTimes->{3.756463807027761*^9, 3.756464138962925*^9},
 CellID->207199818,ExpressionUUID->"8754d2c5-0216-49c1-9493-7541ad81da8b"],

Cell["Add Boxes.wl, providing a rudimentary CSTToBoxes function", "Text",
 CellChangeTimes->{{3.758107460872274*^9, 3.758107559738983*^9}},
 CellID->1336349339,ExpressionUUID->"f3126fd5-3880-4a29-840c-24cb167f67d7"],

Cell["Make Divide binary instead of infix", "Text",
 CellChangeTimes->{{3.758107460872274*^9, 3.758107557842835*^9}},
 CellID->1639360247,ExpressionUUID->"9995fe94-4158-4798-b66f-c781befa9e2b"],

Cell["\<\
Enforce NonASCII restriction on strings and files. This comes from a \
restriction of RunProcess and will be addressed in a future update.\
\>", "Text",
 CellChangeTimes->{{3.758107460872274*^9, 3.758107554226668*^9}},
 CellID->512480319,ExpressionUUID->"4c958f0f-2266-4400-8790-cf4a4f6d07cc"],

Cell["\<\
Preserve the difference between characters providing as byte encoded, and \
characters provided as \\ encoded
For example, the byte 0x0a and the bytes 0x5c 0x6e both encode the newline \
character. And there are times where the distinction is important and must be \
preserved. \\ syntax for the newline character cannot be used outside of \
strings.\
\>", "Text",
 CellChangeTimes->{{3.758107460872274*^9, 3.758107547906419*^9}},
 CellID->1847296963,ExpressionUUID->"91a5509d-12b6-4555-8669-10f65c2f8d6f"],

Cell["\<\
Also it is just a bit nicer to preserve the encoding that was provided. One \
caveat is that \\ encoding does canonicalize to one form. For example, \\n, \
\\ :000a \\ .0a and \\012 all encode the newline character. But it is \
canonicalized to \\n. The general pattern for canonicalization is to first \
prefer the short \\x form if possible (e.g., \\n \\r \\t), and then prefer \
long names \\[Name] syntax, and then prefer \\:xxxx syntax.\
\>", "Text",
 CellChangeTimes->{{3.758107460872274*^9, 3.758107544778448*^9}},
 CellID->1348972462,ExpressionUUID->"9214e5ae-eed3-4a91-ae14-67c4cbbb8e21"]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.9", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}},
 CellID->109968439,ExpressionUUID->"1a541291-54b6-4e09-9814-0d0966a9b2d0"],

Cell["Apr 1, 2019", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}},
 CellID->1403617853,ExpressionUUID->"b64f09eb-1f86-4848-b488-21b54e5dd995"],

Cell["\<\
Remove explicit lists of letterlike long names, and add explicit list of \
uninterpretable long names.
All valid letterlike characters should work now, and any \\:xxxx characters \
are flagged as strange.
Fill out the other lists of characters.
All characters should now be categorized (letterlike, operator, space, \
newline, comma, uninterpretable)\
\>", "Text",
 CellChangeTimes->{
  3.760707542604822*^9, {3.760707602675864*^9, 3.76070766860911*^9}},
 CellID->1679074208,ExpressionUUID->"20de425b-2c7e-466d-ae57-6158bf3b4b86"],

Cell["\<\
Add >>> operator.
Properly stringify args after ::, <<, >>, and >>>.\
\>", "Text",
 CellChangeTimes->{{3.760707694041543*^9, 3.760707717499136*^9}},
 CellID->117608629,ExpressionUUID->"91f038a1-bd02-44f0-9838-4a1e9a52b3df"],

Cell["Attach comments to CST nodes.", "Text",
 CellChangeTimes->{{3.760707967957849*^9, 3.76070797411784*^9}},
 CellID->963272363,ExpressionUUID->"784dc420-5eae-4527-b67a-4301a1d07a57"],

Cell["\<\
Stop using an executable.
Build a shared library and use LibraryLink and MathLink.
Support building with earlier versions of Mathematica. Building with version \
11.0 is supported.\
\>", "Text",
 CellChangeTimes->{{3.76070799784449*^9, 3.7607080236712637`*^9}, {
  3.762867996786229*^9, 3.762868040871101*^9}},
 CellID->1986873855,ExpressionUUID->"8b24e54a-74f1-4218-ab10-49bc9b2fced8"],

Cell["Separate SyntaxIssues and AbstractSyntaxIssues.", "Text",
 CellChangeTimes->{{3.762868049208069*^9, 3.762868061120966*^9}},
 CellID->18170135,ExpressionUUID->"caff7f2e-200b-410c-9e3d-6bcfb022544c"],

Cell["Allow File[] wrappers to work.", "Text",
 CellChangeTimes->{{3.7628681063736258`*^9, 3.762868111085887*^9}},
 CellID->442781071,ExpressionUUID->"df2d2d5f-71c5-4bdb-b728-f04f88135bfd"],

Cell["Various bug fixes.", "Text",
 CellChangeTimes->{{3.7607082570495987`*^9, 3.760708260553357*^9}},
 CellID->790623442,ExpressionUUID->"639c696e-23e1-45ab-a6e0-03d5ed3006eb"]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.10", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}, {
  3.763575037839786*^9, 3.763575038399558*^9}},
 CellID->1029534416,ExpressionUUID->"dedc14ad-8301-42d9-9766-73d37d6cb32b"],

Cell["May 6, 2019", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}, {3.7635750422475758`*^9, 3.7635750427838306`*^9}, {
  3.76606282139886*^9, 3.766062823366068*^9}},
 CellID->1109185833,ExpressionUUID->"5b12f4af-cba1-47cc-90bd-11bc671540ed"],

Cell["Put Source information on link as a packed array.", "Text",
 CellChangeTimes->{{3.763575107291304*^9, 3.763575119034461*^9}, {
  3.763575166111698*^9, 3.763575167263031*^9}},
 CellID->241710820,ExpressionUUID->"8cc1932d-42ee-4a58-851b-8582bfa0ee84"],

Cell["\<\
Properly abstract strings in operators that do their own stringification (::, \
>>, >>>, <<, #).\
\>", "Text",
 CellChangeTimes->{{3.76357512372243*^9, 3.7635751698550863`*^9}},
 CellID->1542175263,ExpressionUUID->"cb24878a-0a7c-4651-85c5-8459a02557dd"],

Cell["Handle parsing #\[CloseCurlyDoubleQuote]123\[CloseCurlyDoubleQuote] and \
#a`b", "Text",
 CellChangeTimes->{{3.7637302032305813`*^9, 3.763730217190834*^9}, {
  3.763909494393689*^9, 3.763909496648921*^9}},
 CellID->1359509598,ExpressionUUID->"9165cef9-9422-496a-b3f2-5185b36d7698"],

Cell["Sandbox mode is now respected in the library.", "Text",
 CellChangeTimes->{{3.763900677067774*^9, 3.7639006863866367`*^9}},
 CellID->51809506,ExpressionUUID->"96cff7e1-5fcf-4c29-88a8-cff56559639c"],

Cell["Support abstracting VectorLess, VectorGreater, etc.", "Text",
 CellChangeTimes->{{3.763909473312231*^9, 3.763909482232114*^9}},
 CellID->1031490307,ExpressionUUID->"5cb55541-f55d-4869-aa24-c4d0a8055beb"],

Cell["Updated build scripts.", "Text",
 CellChangeTimes->{{3.764686182844762*^9, 3.764686189332514*^9}},
 CellID->1769591165,ExpressionUUID->"8225508e-0d70-4f3f-9df5-c228279b2d2c"],

Cell["Re-add remarks about invalid UTF-8 sequences.", "Text",
 CellChangeTimes->{{3.764686237048321*^9, 3.764686246176915*^9}},
 CellID->1017682852,ExpressionUUID->"18ffed53-b2f9-4f09-a5b6-e94a1c2ee3e6"],

Cell["Add a remark about stray \\r characters.", "Text",
 CellChangeTimes->{{3.764686281274653*^9, 3.764686287122554*^9}},
 CellID->1635928856,ExpressionUUID->"e2089201-89ee-454e-bf20-1fc317f0d02f"],

Cell["Add more ambiguity remarks.", "Text",
 CellChangeTimes->{{3.7646863473834*^9, 3.764686356623934*^9}},
 CellID->823150251,ExpressionUUID->"8c9d554f-c7e4-4a85-a4ca-54aba5e23a47"],

Cell["\<\
Support abstracting BeginPackage[]/EndPackage[], Begin[]/End[], and \
BeginStaticAnalysisIgnore[]/EndStaticAnalysisIgnore.\
\>", "Text",
 CellChangeTimes->{{3.7656467444315853`*^9, 3.765646777809844*^9}},
 CellID->596614583,ExpressionUUID->"e3107e34-f940-4cb9-b75e-151b32794c2b"],

Cell["Various bug fixes.", "Text",
 CellChangeTimes->{{3.7607082570495987`*^9, 3.760708260553357*^9}},
 CellID->700148638,ExpressionUUID->"af008b65-81ea-426c-a558-190a6c8bb0b7"]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.11", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}, {
  3.763575037839786*^9, 3.763575038399558*^9}, {3.768167803500489*^9, 
  3.768167803635755*^9}},
 CellID->1268744624,ExpressionUUID->"0c0fcbf5-4de5-4165-b07a-54fc3d1aadea"],

Cell["June 10, 2019", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}, {3.7635750422475758`*^9, 3.7635750427838306`*^9}, {
  3.76606282139886*^9, 3.766062823366068*^9}, {3.76816781256422*^9, 
  3.7681678146764107`*^9}, {3.768994558653206*^9, 3.768994559020742*^9}},
 CellID->1425764505,ExpressionUUID->"316b4c47-9c2b-400c-818a-1106c6dafe5f"],

Cell["Include operator tokens in concrete syntax trees.", "Text",
 CellChangeTimes->{{3.768167845579196*^9, 3.768167852416356*^9}},
 CellID->860574622,ExpressionUUID->"66619df0-1547-495f-b806-706c549b7a42"],

Cell["\<\
Include comments as a separate list returned by concreteParse functions.\
\>", "Text",
 CellChangeTimes->{{3.768167856446726*^9, 3.7681678702474213`*^9}},
 CellID->375309409,ExpressionUUID->"2f76a735-aa23-4dfd-a004-fd7d4d5d5e5b"],

Cell["\<\
Include warnings about using unsupported and undocumented characters.\
\>", "Text",
 CellChangeTimes->{{3.7682124705295763`*^9, 3.7682124895300283`*^9}, {
  3.768299323979825*^9, 3.76829932535646*^9}},
 CellID->665765824,ExpressionUUID->"48946cf4-e287-4fee-95f6-e3a48faae2ac"],

Cell["Include warnings about strange top-level expressions.", "Text",
 CellChangeTimes->{{3.7689945707892323`*^9, 3.7689945845643578`*^9}},
 CellID->1136403098,ExpressionUUID->"edb0a2cb-ac86-41e5-bee5-30f8bd0aba34"],

Cell["Various bug fixes.", "Text",
 CellChangeTimes->{{3.7607082570495987`*^9, 3.760708260553357*^9}},
 CellID->1954795315,ExpressionUUID->"41bb7cd7-1e19-4201-aa4d-e5581f4ee113"]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.12", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}, {
  3.763575037839786*^9, 3.763575038399558*^9}, {3.768167803500489*^9, 
  3.768167803635755*^9}, {3.7699486329498873`*^9, 3.76994863307759*^9}},
 CellID->794449192,ExpressionUUID->"9fcafdee-3ac6-49c6-a043-922d4a3019dd"],

Cell["August 5, 2019", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}, {3.7635750422475758`*^9, 3.7635750427838306`*^9}, {
  3.76606282139886*^9, 3.766062823366068*^9}, {3.76816781256422*^9, 
  3.7681678146764107`*^9}, {3.768994558653206*^9, 3.768994559020742*^9}, {
  3.7699486346051702`*^9, 3.769948634981554*^9}, {3.774013905911127*^9, 
  3.774013907783614*^9}},
 CellID->1401736545,ExpressionUUID->"2e260e18-d618-4c96-9d20-70b948c6171b"],

Cell["Consolidate various atom Nodes into single LeafNode", "Text",
 CellChangeTimes->{{3.7699486545746593`*^9, 3.769948670311556*^9}},
 CellID->1479066077,ExpressionUUID->"e469aaaf-ad43-4ebb-aab3-f17edca586eb"],

Cell["\\ [EmptySet] is not strange.", "Text",
 CellChangeTimes->{{3.77306546851842*^9, 3.773065478661849*^9}},
 CellID->1540342114,ExpressionUUID->"ea432f9e-b98a-4f81-988b-0565e2fa4c5d"],

Cell["Fixed handling of runs of multiple ;;", "Text",
 CellChangeTimes->{{3.7730655074736977`*^9, 3.77306551997015*^9}},
 CellID->614545413,ExpressionUUID->"17309f87-7bed-4e21-a73b-4defb65b1acd"],

Cell["\<\
Comments, whitespace, and newlines are now returned in concrete syntax.\
\>", "Text",
 CellChangeTimes->{{3.770123612724102*^9, 3.77012365551092*^9}},
 CellID->1415897868,ExpressionUUID->"6fe11ad2-49f7-48d1-830b-8dc75f391812"],

Cell["\<\
Introduce new concept of aggregate syntax which is concrete syntax, but with \
comments, whitespace, and newlines removed.\
\>", "Text",
 CellChangeTimes->{{3.770123620651947*^9, 3.770123644342407*^9}},
 CellID->729175069,ExpressionUUID->"85db97b4-1582-48e5-bbc1-aebf2571afc7"],

Cell["Aborts are handled more gracefully.", "Text",
 CellChangeTimes->{{3.773065540971456*^9, 3.7730655509722147`*^9}},
 CellID->1703694901,ExpressionUUID->"d1e9ba64-ea9d-45ba-a37e-291ad99f8ff4"],

Cell["Handle more operators.", "Text",
 CellChangeTimes->{{3.773065590346396*^9, 3.7730655974022713`*^9}, 
   3.773065920586011*^9},
 CellID->1600735656,ExpressionUUID->"1821a4ec-3569-493e-8918-555b8464bf3e"],

Cell["Add CubeRoot character.", "Text",
 CellChangeTimes->{{3.774013932081236*^9, 3.774013936488945*^9}},
 CellID->2036524423,ExpressionUUID->"ffe18076-fa3b-4b81-ad81-de0862edf780"],

Cell["Various bug fixes.", "Text",
 CellChangeTimes->{{3.7607082570495987`*^9, 3.760708260553357*^9}},
 CellID->1271611475,ExpressionUUID->"c850d70d-f6c0-4ec4-9632-995df994ec8f"]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.13", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}, {
  3.763575037839786*^9, 3.763575038399558*^9}, {3.768167803500489*^9, 
  3.768167803635755*^9}, {3.7699486329498873`*^9, 3.76994863307759*^9}, {
  3.774088734535901*^9, 3.774088734719122*^9}},
 CellID->522435368,ExpressionUUID->"a7e52103-180c-410d-a2a0-8f608b5f2cf8"],

Cell["September 16, 2019", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}, {3.7635750422475758`*^9, 3.7635750427838306`*^9}, {
  3.76606282139886*^9, 3.766062823366068*^9}, {3.76816781256422*^9, 
  3.7681678146764107`*^9}, {3.768994558653206*^9, 3.768994559020742*^9}, {
  3.7699486346051702`*^9, 3.769948634981554*^9}, {3.774013905911127*^9, 
  3.774013907783614*^9}, {3.774088736294972*^9, 3.774088736823468*^9}, {
  3.777633955975669*^9, 3.777633963422781*^9}},
 CellID->1658081040,ExpressionUUID->"9dc5c633-5be1-4649-9e8f-6ceff2a83b70"],

Cell["\<\
Add ConcreteParseBox, ToStrandardFormBoxes, and ToSourceCharacterString \
functions.\
\>", "Text",
 CellChangeTimes->{{3.777366743757544*^9, 3.777366772902372*^9}},
 CellID->1210581096,ExpressionUUID->"ca598cf6-d922-41a2-901f-61feda3090c3"],

Cell["Add progress monitoring.", "Text",
 CellChangeTimes->{{3.777366891962343*^9, 3.777366898808782*^9}},
 CellID->976408794,ExpressionUUID->"5b002821-d371-45f2-8122-d2c32fb83fb3"],

Cell["\<\
Switch to sending MakeLeafNode calls over MathLink, for performance.\
\>", "Text",
 CellChangeTimes->{{3.77736693652311*^9, 3.777366943460791*^9}},
 CellID->1580054031,ExpressionUUID->"fdd8d166-b4c2-4545-b8da-871a349708ef"],

Cell["Add some missing operators, \\ [Colon], \\ [CupCap], etc.", "Text",
 CellChangeTimes->{{3.777366977713756*^9, 3.777366992793117*^9}},
 CellID->185320215,ExpressionUUID->"abd3ced6-d0b3-46bd-a373-2b1df736af7a"],

Cell["Other performance improvements.", "Text",
 CellChangeTimes->{{3.77736654990808*^9, 3.777366556891738*^9}, {
  3.7773669488931932`*^9, 3.777366950332879*^9}},
 CellID->825565355,ExpressionUUID->"9f1939a0-4b7b-4340-902d-d057571c602e"],

Cell["Add some CodeActions.", "Text",
 CellChangeTimes->{{3.777366854984768*^9, 3.77736685815248*^9}},
 CellID->385078218,ExpressionUUID->"9468220b-927d-4ffd-8ed8-b8e561a1bf96"],

Cell["Add Did You Mean for /@ for / at top-level", "Text",
 CellChangeTimes->{{3.7773665954757423`*^9, 3.777366616912531*^9}},
 CellID->1641381515,ExpressionUUID->"62b52337-f239-4c1c-9848-1de672aeb5aa"],

Cell["Move to using a struct with bitfields for WLCharacter.", "Text",
 CellChangeTimes->{{3.777366628577157*^9, 3.7773666376496363`*^9}},
 CellID->124193243,ExpressionUUID->"95093294-32f4-440a-a28b-a1918968e19d"],

Cell["Read entire file into buffer and store in SourceManager", "Text",
 CellChangeTimes->{{3.777366643521603*^9, 3.777366656362344*^9}},
 CellID->2109213864,ExpressionUUID->"0c259cc1-8df5-4e7e-a19f-229bdfb9a358"],

Cell["Add ParseLeaf function", "Text",
 CellChangeTimes->{{3.77736666497139*^9, 3.7773666685230207`*^9}},
 CellID->1044851219,ExpressionUUID->"70186075-37fb-4256-aa4e-41b48685f9ac"],

Cell["Create single nodes for Inequalities and VectorInequalities", "Text",
 CellChangeTimes->{3.777366680859109*^9},
 CellID->840656214,ExpressionUUID->"a9904532-edd6-452a-bf30-1510b7cf8bc5"],

Cell["Preserve line continuations in concrete syntax", "Text",
 CellChangeTimes->{{3.7773667002439137`*^9, 3.777366701911316*^9}},
 CellID->614075085,ExpressionUUID->"21aef223-4e04-44a2-b5d0-8446452224f5"],

Cell["Introduce a token for =. which is needed for box support", "Text",
 CellChangeTimes->{{3.7773667002439137`*^9, 3.777366704910472*^9}},
 CellID->2101029760,ExpressionUUID->"d24651f2-f2a5-4054-bba8-23fec64bb060"],

Cell["The characters \\\" and \\\\ are mapped into special codes", "Text",
 CellChangeTimes->{{3.7773667002439137`*^9, 3.777366706924999*^9}},
 CellID->933568699,ExpressionUUID->"8ecb51a9-aaf9-41e8-9ae2-8a6fefcdb32b"],

Cell["Warn about line continuations inside comments", "Text",
 CellChangeTimes->{{3.7773667002439137`*^9, 3.77736670831706*^9}},
 CellID->973599111,ExpressionUUID->"e678ca0b-27db-4efa-b89a-5356195e3feb"],

Cell["\<\
Rename implicit tokens ImplicitNull, ImplicitOne, ImplicitAll\
\>", "Text",
 CellChangeTimes->{{3.777366783223495*^9, 3.777366805336231*^9}},
 CellID->1602352084,ExpressionUUID->"47222c4a-5957-4bf5-9b49-ef11f78539d5"],

Cell["Add InfixOperatorWithTrailingParselet, for commas and semis", "Text",
 CellChangeTimes->{{3.7773668333686037`*^9, 3.777366843162684*^9}},
 CellID->1286542408,ExpressionUUID->"c94cf5e6-29da-439c-b516-901dfef4faaf"],

Cell["Only report UnlikelyEscapeSequence if not a valid character", "Text",
 CellChangeTimes->{{3.777367021678355*^9, 3.777367023882435*^9}},
 CellID->2052893260,ExpressionUUID->"9672df60-4fe2-4e43-b19e-11ec9c86497a"],

Cell["Report strange space characters", "Text",
 CellChangeTimes->{{3.777367021678355*^9, 3.777367030223804*^9}},
 CellID->1504748118,ExpressionUUID->"553c107d-281a-42fe-b39b-d06fdcef9b08"],

Cell["Report strange newline characters", "Text",
 CellChangeTimes->{{3.777367021678355*^9, 3.77736702931144*^9}},
 CellID->1534192154,ExpressionUUID->"60a5cf66-2d72-4359-b078-c8c7aa7fe374"],

Cell["Various bug fixes.", "Text",
 CellChangeTimes->{{3.7607082570495987`*^9, 3.760708260553357*^9}},
 CellID->331382749,ExpressionUUID->"190c5e40-18ad-4954-89d9-8b88cce72f7e"]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.14", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}, {
  3.763575037839786*^9, 3.763575038399558*^9}, {3.768167803500489*^9, 
  3.768167803635755*^9}, {3.7699486329498873`*^9, 3.76994863307759*^9}, {
  3.774088734535901*^9, 3.774088734719122*^9}, {3.7776535140345488`*^9, 
  3.777653514297616*^9}},
 CellID->1900895354,ExpressionUUID->"050882bb-c842-46dc-89bb-6b8c05da9e7e"],

Cell["October 28, 2019", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}, {3.7635750422475758`*^9, 3.7635750427838306`*^9}, {
  3.76606282139886*^9, 3.766062823366068*^9}, {3.76816781256422*^9, 
  3.7681678146764107`*^9}, {3.768994558653206*^9, 3.768994559020742*^9}, {
  3.7699486346051702`*^9, 3.769948634981554*^9}, {3.774013905911127*^9, 
  3.774013907783614*^9}, {3.774088736294972*^9, 3.774088736823468*^9}, {
  3.777633955975669*^9, 3.777633963422781*^9}, {3.7776535156732607`*^9, 
  3.777653516145692*^9}, {3.781269537781011*^9, 3.7812695405800743`*^9}},
 CellID->233998259,ExpressionUUID->"303ef9a7-0364-4a30-8606-d2bacfae4649"],

Cell["Switch to using unique_ptr implementation.", "Text",
 CellChangeTimes->{{3.777366743757544*^9, 3.777366772902372*^9}, {
  3.7776535518355503`*^9, 3.777653567321495*^9}},
 CellID->898102880,ExpressionUUID->"0992ce1d-de1d-45f2-97dd-45b8f921e11a"],

Cell["Work on messages", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269325074967*^9}},
 CellID->1900033044,ExpressionUUID->"701aca24-8907-4e21-a699-0db818f59359"],

Cell["Simplify handling line continuation of just \\r", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269327516527*^9}},
 CellID->773539618,ExpressionUUID->"fab14b54-2dd6-4458-be8e-c486e7469db0"],

Cell["No need to issue warning for errors being strange", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.7812693289559517`*^9}},
 CellID->14360788,ExpressionUUID->"fadc3b22-4df6-46b1-a195-6445d26be07e"],

Cell["Simplify handling \\ at end of file", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269330645031*^9}},
 CellID->843595452,ExpressionUUID->"9c0b2fc1-6873-4c96-abaa-174bedc55b46"],

Cell["Return TOKEN_ERROR_EMPTYSTRING at EOF when appropriate", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.78126933216495*^9}},
 CellID->621724270,ExpressionUUID->"905097ed-8b6e-437d-91f6-6d6fe3c1e3fa"],

Cell["Prevent SourceManager from advancing past EOF", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.7812693336607647`*^9}},
 CellID->1811863235,ExpressionUUID->"6e6954ca-2b19-40ec-aadd-540a711d1ced"],

Cell["Do not count SyntaxErrorNodes as being strange at top-level", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269338723527*^9}},
 CellID->667276185,ExpressionUUID->"eada9d0e-3668-4871-a5f3-159d12a5ca78"],

Cell["\<\
Do the favor of combining naked \\ with next character for better error \
reporting\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.78126933943716*^9}, 
   3.781269438206583*^9},
 CellID->751236661,ExpressionUUID->"69944c11-17f9-4674-93a7-a627bad4c8cf"],

Cell["Tighter error handling", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269340149117*^9}, 
   3.781269440399619*^9},
 CellID->978200714,ExpressionUUID->"0b498630-d0c9-44f5-bce7-c5c4a7df4ab9"],

Cell["Call back to kernel for LongName suggestions", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.78126934090856*^9}, 
   3.781269441855282*^9},
 CellID->1632082413,ExpressionUUID->"1d31adbb-e052-4dda-bd0a-e56d4e140602"],

Cell["\<\
Add MultiBoxNode, for handling multiple inputs in an Input cell\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269341597295*^9}, 
   3.7812694432477283`*^9},
 CellID->600492160,ExpressionUUID->"bbf8b516-fdf5-4894-bf31-5b9f84927cfc"],

Cell["Make sure that ParseLeafs remembers any SyntaxIssues", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.78126934229318*^9}, 
   3.781269445183811*^9},
 CellID->1446075867,ExpressionUUID->"633b3c7b-f8e7-4ae5-93f5-36a42fe9b22a"],

Cell["Support different SourceStyles", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269346867922*^9}, 
   3.7812694483204203`*^9},
 CellID->1124663570,ExpressionUUID->"9ec13248-4df1-4f54-9b19-a4e2e5071615"],

Cell["\<\
Space or Newline chars that are directly encoded are not strange\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269346180987*^9}, 
   3.781269449672155*^9},
 CellID->69560096,ExpressionUUID->"057f59ca-c324-4b94-8455-4b55ed5e3195"],

Cell["\<\
Remove string methods from SourceCharacter and WLCharacter, and provide \
iterators instead\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269345508997*^9}, 
   3.781269450736178*^9},
 CellID->865429504,ExpressionUUID->"92668a22-cef0-4048-a5ff-f9d8d8d2ebac"],

Cell["\<\
Differentiate between line continuations with different newlines\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269344821519*^9}, 
   3.781269451720201*^9},
 CellID->366932597,ExpressionUUID->"13ac46d6-ccb7-403e-aaa3-a481e40ddfb4"],

Cell["Optimizing: Collect flag fields into single bitset fields", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.7812693509091043`*^9}, 
   3.781269452584169*^9},
 CellID->1610607242,ExpressionUUID->"f6ee6d1e-e624-43ea-abfd-73c0148bb87e"],

Cell["Optimizing: eliminate dynamic_cast", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.7812693502770557`*^9}, 
   3.781269453488381*^9},
 CellID->444545859,ExpressionUUID->"fb0d3e74-8ba5-4369-8f54-eb1f2af878af"],

Cell["\<\
Develop system for using RAII to automatically handle queueing unhandled \
whitespace\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269349524982*^9}, 
   3.7812694543843117`*^9},
 CellID->386644300,ExpressionUUID->"24d49b87-151e-427a-bfac-ce559baf625e"],

Cell["Work on CodeActions", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269348829678*^9}, 
   3.781269455352377*^9},
 CellID->45234278,ExpressionUUID->"d089c83c-3190-4dcf-9438-2fafe241454d"],

Cell["Distinguish between SyntaxIssues and FormatIssues", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269360301515*^9}, 
   3.781269456184277*^9},
 CellID->43299308,ExpressionUUID->"319454dd-a7ab-4a0e-a826-6ec3841ef1d9"],

Cell["Add ConfidenceLevel to issues", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269359549426*^9}, 
   3.781269457072369*^9},
 CellID->1881996870,ExpressionUUID->"d993d516-5b11-4068-9052-0dd7dfd36b7a"],

Cell["Allow :: to work when parsing boxes", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.7812693572614117`*^9}, 
   3.781269457960235*^9},
 CellID->434757427,ExpressionUUID->"9ce6fbac-cf58-41e2-baaf-285d13acd44c"],

Cell["Allow ? to work when parsing boxes", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269356356638*^9}, 
   3.781269458833426*^9},
 CellID->1228708495,ExpressionUUID->"2dc65fb7-0dfc-46f6-b144-7d70acc63d52"],

Cell["Convert all syntax issues in C++ code to use CondeActions", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.78126935567733*^9}, 
   3.781269459656439*^9},
 CellID->700925913,ExpressionUUID->"fe046cf4-71fc-4ac1-a7a4-142547bfeb06"],

Cell["\<\
Add LeafSeqNode and NodeSeqNode classes in order to alleviate the need to \
constantly iterate through vectors\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269355013343*^9}, 
   3.781269460656559*^9},
 CellID->1514015996,ExpressionUUID->"aaac5f44-8cdf-42d8-a124-66528a85f496"],

Cell["Employ some strategies to reduce copying Tokens so much", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269354347912*^9}, 
   3.781269464216674*^9},
 CellID->533111469,ExpressionUUID->"6cb9a224-c4bc-42d5-ab28-b6e928b2c11f"],

Cell["\<\
Letterlike characters can be strange, or very strange (with higher confidence \
that it is a problem)\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269353701479*^9}, 
   3.781269465776884*^9},
 CellID->702684199,ExpressionUUID->"ad1430a8-5aa4-4ec4-a811-2e6544fb2f78"],

Cell["Better error handling for f[1\\[Alpa]2]", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.7812693625901127`*^9}, 
   3.78126946660073*^9},
 CellID->1000757740,ExpressionUUID->"20256108-84e4-420d-b40f-ee3defee011d"],

Cell["\<\
Added Intra[] construct for specifying positions within tokens\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269364070167*^9}, 
   3.781269467448847*^9},
 CellID->643412876,ExpressionUUID->"abc0b546-9df7-4adb-b3aa-21e979087d85"],

Cell["Handle \\[Alpa] being parsed as boxes", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.7812693648220043`*^9, 3.781269468344881*^9},
 CellID->1260044287,ExpressionUUID->"35603383-03f1-49a6-8add-6262b6565b59"],

Cell["Start work to make TokenEnum contain other useful bits", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.78126936588629*^9, 3.781269469241013*^9},
 CellID->1228088542,ExpressionUUID->"c4e19431-f8ca-4d73-8551-ceb47db035ca"],

Cell["\<\
Make sure that SyntaxErrorNodes always have children, and are not just a leaf \
node\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.7812693667661667`*^9, 3.781269470120803*^9},
 CellID->1018794077,ExpressionUUID->"53d34295-b519-4f11-be56-4c60617e228b"],

Cell["\<\
Convert Token errors into appropriate SyntaxErrorNodes when abstracting\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.781269367678232*^9, 3.78126947095231*^9},
 CellID->984934608,ExpressionUUID->"c9f5ba07-834a-4702-9726-54acc401b263"],

Cell["Allow e.g., { + } to be parsed correctly as boxes", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.7812693685341253`*^9, 3.781269471816983*^9},
 CellID->992005580,ExpressionUUID->"797b5181-767f-4627-a144-c33e2c8b404d"],

Cell["\<\
Revamped the error handling in the parser, so that unexpected closing \
brackets and unexpected operators do not eat any unnecessary whitespace. Lot \
of work and kind of ugly. But maybe error handling has to be ugly\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.7812693711582203`*^9, 3.78126947317712*^9},
 CellID->1722231399,ExpressionUUID->"40794676-6536-459a-9813-dec0ee3347c2"],

Cell["Use LongName for making characters graphical, if available", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.781269371918407*^9, 3.7812694744892063`*^9},
 CellID->1758528727,ExpressionUUID->"a853179f-0ba7-46b8-bc8f-9628945fac20"],

Cell["Add check for strange characters", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.7812693726948833`*^9, 3.7812694753611717`*^9},
 CellID->1922364675,ExpressionUUID->"1fb7938a-2a7c-4382-9bfa-c7c0fb400e1c"],

Cell["Allow boxes with << to be parsed properly", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.781269373478426*^9, 3.7812694762491817`*^9},
 CellID->291623610,ExpressionUUID->"2881f923-a52f-45c3-8767-6bede3c41150"],

Cell["Drop ImplicitNull when converting back to boxes", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.781269374301897*^9, 3.781269477161275*^9},
 CellID->760330816,ExpressionUUID->"6e4cec90-438c-467d-a8f6-f1526940e369"],

Cell["Add checks for strange Unicode characters", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, 
   3.7812693751348352`*^9, 3.781269478065382*^9},
 CellID->1352324862,ExpressionUUID->"e9a7f79f-25b9-41e5-a245-cb28bb829957"],

Cell["\<\
When parsing a leaf, treat multiple tokens of whitespace as a single token of \
whitespace, similar to how FE works\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269378038908*^9}, {3.781269481561503*^9, 
  3.781269485331317*^9}},
 CellID->1704519433,ExpressionUUID->"5cab143e-b06a-4199-8094-5cdcd8144f9d"],

Cell["\<\
Remove special handling of NonAssociativity with DirectedEdge and \
UndirectedEdge. This was bug 206938 and is now fixed.\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269378038908*^9}, {3.781269481561503*^9, 
  3.781269482785593*^9}},
 CellID->426259451,ExpressionUUID->"592b0d24-f441-45af-bc85-0137f12a6500"],

Cell["Add a Quirks mode", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269378999633*^9}, 3.781269486929076*^9},
 CellID->137146565,ExpressionUUID->"0bccab2c-88cb-415a-a4eb-184c52f6a5cf"],

Cell["\<\
Introduce AbstractFormatIssues, to allow warning about unneeded line \
continuations\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269379798725*^9}, 3.7812694881617613`*^9},
 CellID->772364724,ExpressionUUID->"53ea927e-99fc-4eb9-b262-7a30e35910c3"],

Cell["\<\
Have ScopedIFS manage the data buffer from a file, and pass it to \
SourceManager\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269380654182*^9}, 3.781269489465865*^9},
 CellID->1742753800,ExpressionUUID->"e1864d5f-ec42-44be-9061-a6bbbb1b3076"],

Cell["Treat \\r\\n as a single Newline token", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269384022949*^9}, 3.781269419193182*^9, {
   3.7812694906418447`*^9, 3.78126949237805*^9}},
 CellID->933655167,ExpressionUUID->"df2230bb-cf60-4284-ab7f-f5d93bbdedeb"],

Cell[CellGroupData[{

Cell["Fixes", "Subsection",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269384022949*^9}, {3.781269495145859*^9, 
  3.781269495474154*^9}},
 CellID->279383140,ExpressionUUID->"ae4fcf55-43a4-46e2-b1c4-ba477a122509"],

Cell["Fix text mode error found on Windows", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269384782803*^9}, 3.781269502426504*^9},
 CellID->1193181638,ExpressionUUID->"2a412812-f15e-41c6-9fc8-6559cf9aad66"],

Cell["\<\
Fix bug where \\\\ in a string, at end of line, on Windows, gave an assert\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269385471073*^9}, 3.781269504714472*^9},
 CellID->601494180,ExpressionUUID->"046c8634-edfb-4a49-91bf-0bd9c9321490"],

Cell["Fix ToSourceCharacterString", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.7812693861428623`*^9}, 3.7812695057705173`*^9},
 CellID->1107156831,ExpressionUUID->"1152b894-7b92-47a2-8074-16072322605c"],

Cell["Fix OptionalDefaultPatternNode", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269386847088*^9}, 3.781269506714487*^9},
 CellID->39057362,ExpressionUUID->"5c8aec4f-41fc-4399-9c70-1ee17cb79e88"],

Cell["Fix when UnhandledDot can happen", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.7812693875270348`*^9}, 3.781269507658701*^9},
 CellID->1454570799,ExpressionUUID->"878882b4-6655-445a-9e49-be8e6822168f"],

Cell["Fix ParseLeaf of <<", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269388215042*^9}, 3.781269508626748*^9},
 CellID->17581345,ExpressionUUID->"712bea71-2e32-405c-89be-220337802cf2"],

Cell["Fix parsing TagSetDelayed and TagUnset", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269389032031*^9}, 3.781269509578628*^9},
 CellID->1284405776,ExpressionUUID->"0f862bf8-55b2-4722-a9f2-f7d0a4c2c362"],

Cell["\<\
Fix when ReplaceNode CodeAction is the entire expression (ReplacePart does \
not work)\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269389807281*^9}, 3.781269510522537*^9},
 CellID->502257588,ExpressionUUID->"89078f9a-41b7-475f-a543-d26759cc924f"],

Cell["Fix reporting of EOF in escape sequences", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269391871149*^9}, {3.781269511458797*^9, 
  3.7812695143150578`*^9}},
 CellID->1832548806,ExpressionUUID->"b520b0ca-87c3-404c-884b-ef967238530b"]
}, Open  ]],

Cell[CellGroupData[{

Cell["Cleanup", "Subsection",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269393143086*^9}, {3.781269516874996*^9, 
  3.7812695172831306`*^9}},
 CellID->437317168,ExpressionUUID->"69b04467-bb92-40bf-830d-0ac61e85bc3d"],

Cell["Move NonAssociative error handling to Abstract.wl", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269393847526*^9}, 3.781269519491157*^9},
 CellID->1300602542,ExpressionUUID->"08d42fae-f581-4235-b245-41cb76dcfd6a"],

Cell["\<\
Convert tokenQueue to a deque, since there are so many insertions in the front\
\>", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269394575386*^9}, 3.7812695204988413`*^9},
 CellID->2138364228,ExpressionUUID->"06594237-14fe-4efb-89fe-1d949d6ead77"],

Cell["Remove append from Parser, and only have prepend", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269395407345*^9}, 3.781269521451126*^9},
 CellID->1348747451,ExpressionUUID->"fb429686-4c55-4ddb-8538-a4108835b46a"],

Cell["Complete remove Metadatas", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269396191524*^9}, 3.781269524466687*^9},
 CellID->1708514872,ExpressionUUID->"04186018-4b9c-4f24-b3bc-7524fe786fc5"],

Cell["Move library-related stuff to Library.wl", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269397085905*^9}, 3.781269525483429*^9},
 CellID->1005609667,ExpressionUUID->"e4d73c0c-8dae-448b-a29d-8e2e17e695e6"],

Cell["Organize Token and LongName files", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269397823309*^9}, 3.781269526563427*^9},
 CellID->585371379,ExpressionUUID->"258e92eb-e0ee-49de-bcf2-abbe885e38c6"],

Cell["Remove unneeded use of unique_ptr", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
   3.781269376190691*^9, 3.781269398551605*^9}, 3.781269527651411*^9},
 CellID->714179946,ExpressionUUID->"489e902a-d76f-4790-986d-4ea704546254"],

Cell["Remove LOOKAHEAD wrappers", "Text",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269401447523*^9}, {3.781269528643466*^9, 
  3.7812695309478617`*^9}},
 CellID->936249339,ExpressionUUID->"b231fe70-d6d0-47ad-9e37-1ef60b090e6f"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.15", "Section",
 CellChangeTimes->{{3.7607073928335342`*^9, 3.7607073933448772`*^9}, {
  3.763575037839786*^9, 3.763575038399558*^9}, {3.768167803500489*^9, 
  3.768167803635755*^9}, {3.7699486329498873`*^9, 3.76994863307759*^9}, {
  3.774088734535901*^9, 3.774088734719122*^9}, {3.7776535140345488`*^9, 
  3.777653514297616*^9}, {3.787931686587722*^9, 3.7879316867149982`*^9}},
 CellID->861871899,ExpressionUUID->"3afa0d5d-e13e-449d-b755-2a6961b478a9"],

Cell["January 15, 2020", "Text",
 CellChangeTimes->{{3.760707399336836*^9, 3.760707406609501*^9}, {
  3.762867886497456*^9, 3.762867887047831*^9}, {3.763118652363542*^9, 
  3.763118653977253*^9}, {3.7635750422475758`*^9, 3.7635750427838306`*^9}, {
  3.76606282139886*^9, 3.766062823366068*^9}, {3.76816781256422*^9, 
  3.7681678146764107`*^9}, {3.768994558653206*^9, 3.768994559020742*^9}, {
  3.7699486346051702`*^9, 3.769948634981554*^9}, {3.774013905911127*^9, 
  3.774013907783614*^9}, {3.774088736294972*^9, 3.774088736823468*^9}, {
  3.777633955975669*^9, 3.777633963422781*^9}, {3.7776535156732607`*^9, 
  3.777653516145692*^9}, {3.781269537781011*^9, 3.7812695405800743`*^9}, {
  3.787931693299427*^9, 3.7879316999158497`*^9}, {3.788088196439436*^9, 
  3.788088196646205*^9}},
 CellID->703807478,ExpressionUUID->"fe484536-0d30-43a0-9599-5bae70b2ead4"],

Cell["\<\
Update Source of nodes to be half-open. This is a change from earlier \
versions, where the Source was always inclusive. 

For example, here is the old Source for the integer 123:

In[2]:= ConcreteParseString[\[OpenCurlyDoubleQuote]123\[CloseCurlyDoubleQuote]]

Out[2]= ContainerNode[String, {LeafNode[Integer, 
   \[OpenCurlyDoubleQuote]123\[CloseCurlyDoubleQuote], <|Source -> {{1, 1}, \
{1, 3}}|>]}, <||>]

And now here is the new Source:

In[3]:= ConcreteParseString[\[OpenCurlyDoubleQuote]123\[CloseCurlyDoubleQuote]]

Out[3]= ContainerNode[String, {LeafNode[Integer, 
   \[OpenCurlyDoubleQuote]123\[CloseCurlyDoubleQuote], <|Source -> {{1, 1}, \
{1, 4}}|>]}, <||>]

This change has a number of nice qualities. It is now easy to determine the \
length of the token by subtracting the start from the end, and 0-length \
tokens can now be represented accurately.\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934260886435*^9, 3.787934296206614*^9},
 CellID->2007339156,ExpressionUUID->"83ad449c-5caf-4716-9ad7-7e1026b513c8"],

Cell["Add Creator field to paclet.", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934263654489*^9, 3.787934297534491*^9},
 CellID->381100522,ExpressionUUID->"34347c05-1456-4bb9-a698-d152dcdb224f"],

Cell["Standardize on using ContainerNode as the outer-most node", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.7879342644863586`*^9, 3.78793429879872*^9},
 CellID->1360237900,ExpressionUUID->"ee831266-1d3b-42c9-b6f7-c346d1c0e2d9"],

Cell["Add InsertNodeAfter CodeAction command", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934265614716*^9, 3.787934299934791*^9},
 CellID->1554962985,ExpressionUUID->"9d5fd768-a58f-43ab-9c7e-e0c337420f9a"],

Cell["Add ParseBytes function", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.7879342664065866`*^9, 3.787934301094811*^9},
 CellID->1534388552,ExpressionUUID->"4048250e-1496-4c02-bed9-ea2329bbe2f0"],

Cell["Add InsertTextAfter CodeAction command", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.7879342674228563`*^9, 3.7879343022309227`*^9},
 CellID->1484760288,ExpressionUUID->"cfa26217-3cd3-4fb7-900a-1bf1a1ab7512"],

Cell["FormatIssues now explicitly supply their CodeActions", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934268190566*^9, 3.7879343050870657`*^9},
 CellID->606182276,ExpressionUUID->"e6df5d34-6689-4ba7-9abe-cb347991e4f6"],

Cell["\<\
Do not complain about unexpected line continuations in comments\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934269358553*^9, 3.787934306607156*^9},
 CellID->443091364,ExpressionUUID->"093c5d64-261f-4f5d-9190-34398d08f165"],

Cell["\<\
Add more operators:
DoubleRightTee
DoubleLeftTee
UpTee
DownTee
RoundImplies
Perpendicular
etc.\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934271439088*^9, 3.787934308158206*^9},
 CellID->1710750599,ExpressionUUID->"136dec59-b3c0-4559-8e97-cdb96d0254a7"],

Cell["Disable treating BMP PUA as strange for now", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934272246619*^9, 3.787934311215399*^9},
 CellID->2074251357,ExpressionUUID->"d87a68b1-a976-40cd-9bf7-f8fa286438ba"],

Cell["\<\
REPLACEMENT CHARACTER 0xfffd is strange, this will allow flagging of bad UTF8 \
in the linter\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.7879342730631*^9, 3.7879343142394457`*^9},
 CellID->1840515348,ExpressionUUID->"94a96354-329e-44b8-8bad-bf2703f4d408"],

Cell["\<\
Introduce \\r\\n as a single SourceCharacter. This greatly simplifies newline \
handling.\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934273935066*^9, 3.787934316719749*^9},
 CellID->1187002448,ExpressionUUID->"4097c7ac-d7a4-4881-8d9d-604bbb533f4e"],

Cell["Standardize on using Whitespace as a token", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934274790927*^9, 3.787934317911704*^9},
 CellID->1974546553,ExpressionUUID->"828059f4-732e-4891-a0b5-a017dd2323b1"],

Cell["Require using File[] wrapper", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.7879342756072817`*^9, 3.7879343190709763`*^9},
 CellID->1139119180,ExpressionUUID->"43497225-63c5-411e-a628-1d7546213d64"],

Cell["Add Listable version of Tokenize", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.7879342764309797`*^9, 3.787934320023816*^9},
 CellID->359345255,ExpressionUUID->"6cbd33e1-5676-4f2d-8e88-4bf275904c79"],

Cell["Add SafeString function", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934277310808*^9, 3.787934321023848*^9},
 CellID->791685421,ExpressionUUID->"b349d8ee-0335-42ee-a87a-b4809a80efe9"],

Cell["InlinePart longname is unsupported", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879335889471292`*^9}, 
   3.787934322095994*^9},
 CellID->48193935,ExpressionUUID->"b1988a51-5f05-4f51-bf51-806790e95b42"],

Cell[CellGroupData[{

Cell["Fixes", "Subsection",
 CellChangeTimes->{{3.787933476870586*^9, 3.787933477566519*^9}},
 CellID->394130626,ExpressionUUID->"4e67a742-896b-4b13-adf2-5e3fc16bb9e9"],

Cell["Bring in several fixes found from fuzz testing", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.7879342802316723`*^9},
 CellID->1313863834,ExpressionUUID->"98118e4d-590f-4af5-98ba-2176bd7f7c20"],

Cell["\<\
When parsing a - b + c, make sure to give the abstracted Times expression the \
correct Source.\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934281479557*^9, 
   3.78793432638422*^9},
 CellID->1682599584,ExpressionUUID->"5104e590-995b-44bc-93eb-fd7148cf337a"],

Cell["\<\
Fix implicit Times in boxes by giving it the same Source as the RHS\
\>", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934282303653*^9, 
   3.787934327784247*^9},
 CellID->1386544592,ExpressionUUID->"f91b7f49-c25e-4372-a988-326d986b9969"],

Cell["Fix parsing single-digit precision", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934283167839*^9, 
   3.787934328896336*^9},
 CellID->1309904147,ExpressionUUID->"4e2387e3-3fc6-48d8-b367-855583ec234e"],

Cell["Treat prefix !! properly", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934283991865*^9, 
   3.787934329928409*^9},
 CellID->1704133232,ExpressionUUID->"9845baba-2ca1-44eb-81bd-c27bc5bff3c5"],

Cell["Fix line continuations in # and % tokens", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934285975913*^9, 
   3.787934330896412*^9},
 CellID->377830185,ExpressionUUID->"cc098588-376c-4db5-a1b0-603c153dd4f3"],

Cell["Abstract HermitianConjugate into ConjugateTranspose", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.7879342872160683`*^9, 
   3.787934331880574*^9},
 CellID->82775116,ExpressionUUID->"e27bf1a1-dede-4363-83a4-8a29b5ea42c7"],

Cell["Handle a-EOF and a/EOF", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934288200151*^9, 
   3.787934332872493*^9},
 CellID->1779455003,ExpressionUUID->"cc5830df-2add-43bb-afa9-54b1923b5b8a"],

Cell["Handle Unicode non-characters and BOM", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934289096064*^9, 
   3.7879343353604317`*^9},
 CellID->1442967299,ExpressionUUID->"da5e4943-ca09-46e4-a1dc-08255cc51006"],

Cell["Fix precedence problem of ++a++ and --a--", "Text",
 CellChangeTimes->{{3.787933458363221*^9, 3.7879334695259447`*^9}, {
   3.78793359613929*^9, 3.787933612196144*^9}, 3.787934336608754*^9},
 CellID->418568722,ExpressionUUID->"8a49ad13-782f-46f1-9e86-332f16ac046a"]
}, Open  ]],

Cell[CellGroupData[{

Cell["Cleanup", "Subsection",
 CellChangeTimes->{{3.781269317536881*^9, 3.781269334283327*^9}, {
  3.781269376190691*^9, 3.781269393143086*^9}, {3.781269516874996*^9, 
  3.7812695172831306`*^9}},
 CellID->1875566729,ExpressionUUID->"ed71ca35-3b23-4450-9de0-76347ef3716e"],

Cell["Remove unused MissingOpener parts", "Text",
 CellChangeTimes->{3.787933466154292*^9, 3.787933616668335*^9, 
  3.7879342538302803`*^9},
 CellID->1885043637,ExpressionUUID->"92b57599-2088-463f-88bb-86fe9518ff1b"],

Cell["\<\
Do not treat - as separate binary operator from +. Combine - parsing with +.\
\>", "Text",
 CellChangeTimes->{3.787933466154292*^9, 3.787933616668335*^9, 
  3.7879342548382063`*^9, 3.787934340016033*^9},
 CellID->102162868,ExpressionUUID->"25528b58-2b53-4a59-9545-365df2c50084"],

Cell["Do not check for strange characters in comments", "Text",
 CellChangeTimes->{3.787933466154292*^9, 3.787933616668335*^9, 
  3.787934341080936*^9},
 CellID->1211888523,ExpressionUUID->"7a80da0f-1b48-49d6-aece-e47573f25f28"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell["0.15.1", "Section",
 CellChangeTimes->{{3.788783698192678*^9, 3.7887836991276903`*^9}},
 CellID->884946388,ExpressionUUID->"c98843ea-ff26-4b42-81ea-f9b2cf97794e"],

Cell["January 23, 2020", "Text",
 CellChangeTimes->{{3.7887837087039843`*^9, 3.7887837121763067`*^9}},
 CellID->1969687641,ExpressionUUID->"0741315e-ad39-4880-b817-246e0b2dd675"],

Cell["Only load expr lib functions if expr lib exists", "Text",
 CellChangeTimes->{{3.788783799021402*^9, 3.788783802330599*^9}},
 CellID->1353066924,ExpressionUUID->"efbe814b-7131-484a-9ab8-d7810f272ddb"],

Cell["Fix assert when parsing \:feff", "Text",
 CellChangeTimes->{{3.788783799021402*^9, 3.788783804089163*^9}},
 CellID->1291453585,ExpressionUUID->"b638beb1-d42f-44e2-8e2f-c180ff727109"],

Cell["Fix FileExistsQ::fstr that can happen with earlier versions", "Text",
 CellChangeTimes->{{3.788783799021402*^9, 3.7887838070893517`*^9}},
 CellID->843182866,ExpressionUUID->"d0f26120-731c-445b-acd6-a6301f42a1d2"]
}, Open  ]],

Cell[CellGroupData[{

Cell["1.0", "Section",
 CellChangeTimes->{{3.794065394705345*^9, 3.794065396376458*^9}, {
  3.794065496990739*^9, 3.794065497861961*^9}},
 CellID->1908509994,ExpressionUUID->"6e90b23e-8428-4d59-a6d1-764a91ae7e03"],

Cell["March 24, 2020", "Text",
 CellChangeTimes->{{3.794065579903686*^9, 3.794065583127184*^9}},
 CellID->890972093,ExpressionUUID->"ffdfdb29-8d16-497d-9cc6-b2a699015637"],

Cell["Properly abstract unquoted strings", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.7940655037491827`*^9}},
 CellID->480760495,ExpressionUUID->"cec3415c-7d51-4f7c-bd62-2edc8b5c6848"],

Cell["Rename ParseLeaf -> ConcreteParseLeaf", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065506101469*^9}},
 CellID->141538628,ExpressionUUID->"126a7efd-73a5-4890-a80e-a146942b3aa3"],

Cell["Rename AST -> CodeParser", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.7940655096353683`*^9}},
 CellID->931546022,ExpressionUUID->"e99cfc0b-7407-4e08-8705-ec904a624ca5"],

Cell["\<\
Add support for System`Private`NewContextPath / \
System`Private`RestoreContextPath\
\>", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065516139577*^9}},
 CellID->1369491844,ExpressionUUID->"b5db9497-e5ea-42e8-af02-e27c6f5583f6"],

Cell["\<\
Do better job with ToStandardFormBoxes handling multiple inputs separated by \
newlines\
\>", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065517510027*^9}},
 CellID->970135123,ExpressionUUID->"b8cccf8c-8fc8-4ead-9ca0-70b03c104422"],

Cell["\<\
Simplify newline handling so that newline tokens are contiguous and \
half-open, just like all other tokens\
\>", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065523348611*^9}},
 CellID->550753730,ExpressionUUID->"b2d096ad-2f05-403a-94ba-8fab25a65af1"],

Cell["Enable multi-line mode for matching chunks.", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065524918511*^9}},
 CellID->1303020787,ExpressionUUID->"b8b84652-805d-451c-8ee8-9bdf41f82b8f"],

Cell["Add SourceConvention option", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065527124936*^9}},
 CellID->1262636124,ExpressionUUID->"7eb2eab8-26b1-45eb-9569-a5575be9d89a"],

Cell["Generate Parselet registrations at build-time", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.7940655315428057`*^9}},
 CellID->1318057388,ExpressionUUID->"99e905d6-66a7-46a1-9b0e-bfa3e241037d"],

Cell["Convert various std::maps to sorted std::arrays", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065532878949*^9}},
 CellID->2076891631,ExpressionUUID->"5426e9e2-a4a4-4927-a8f6-bb5bd82e1242"],

Cell["Add EncodingIssues", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065534223166*^9}},
 CellID->1502107121,ExpressionUUID->"4e16fa2b-d4ec-47f0-92af-af40777900a8"],

Cell["Template-ize UnderParselet", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065535488122*^9}},
 CellID->44005533,ExpressionUUID->"20b09244-e87b-4a98-ade3-218b54bea231"],

Cell["Make all parsing functions listable", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065538719091*^9}},
 CellID->883257671,ExpressionUUID->"4c1d4026-80c3-4963-9dd7-41326433f171"],

Cell["Insert \"Definition\" metadata for functions", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065539967144*^9}},
 CellID->323616878,ExpressionUUID->"f04f8dda-f34c-4b97-bfd8-fcbf246b3d2b"],

Cell["Allow + +a to parse as +a, the same as kernel", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.79406554113564*^9}},
 CellID->1773907775,ExpressionUUID->"55bf804b-f43f-41ed-a7f5-a06414c6505e"],

Cell["\<\
Change from old syntax CodeParse[str, h] to new Syntax CodeParse[str, \
ContainerNode -> h]\
\>", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065542311352*^9}},
 CellID->1019556530,ExpressionUUID->"2bf35e39-27df-4c1e-bc43-704bbae25403"],

Cell["Call setupLibraries[] lazily", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065543527382*^9}},
 CellID->1423402005,ExpressionUUID->"4b372c6c-bd81-4257-8181-97f0e260fd36"],

Cell["Transition to purely parselet-driven parsing", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.7940655447355623`*^9}},
 CellID->94822273,ExpressionUUID->"0eca724b-e539-4fda-baae-36a4bf244805"],

Cell["\<\
Remove implicit Times logic from parser, and properly handle inside parselets.\
\>", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065547183661*^9}},
 CellID->220377184,ExpressionUUID->"4db9f504-f784-45ae-9eba-86b858626b83"],

Cell["\<\
No longer need to pay the cost of checking implicitTimes boolean for every \
parse.\
\>", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065548488991*^9}},
 CellID->93864776,ExpressionUUID->"fad60397-b32d-46cb-9f47-4e07179e5d89"],

Cell[CellGroupData[{

Cell["Fixes", "Subsection",
 CellChangeTimes->{{3.794065622538422*^9, 3.794065623281608*^9}},
 CellID->1972108196,ExpressionUUID->"a5c60abc-9797-4968-98e8-b18e42f38eeb"],

Cell["Fix crash found by afl", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.7940655115017853`*^9}},
 CellID->1322836298,ExpressionUUID->"448dc3af-7b78-4944-9d65-e784c8cafb15"]
}, Open  ]],

Cell[CellGroupData[{

Cell["Cleanup", "Subsection",
 CellChangeTimes->{{3.794065631162096*^9, 3.7940656320581284`*^9}},
 CellID->2033920677,ExpressionUUID->"05b7f943-4326-4b07-bb21-2d3d3d05f88b"],

Cell["Combine handling of Inequality and VectorInequality", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.7940655288464823`*^9}},
 CellID->1872876999,ExpressionUUID->"9aebe686-d475-4aad-b5e5-6c61083fbd71"],

Cell["Combine handling of Infix and Inequality", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065530246551*^9}},
 CellID->1363423443,ExpressionUUID->"44bd0496-910b-42a9-9925-e4a2407b8b44"],

Cell["Cleanup several issues from fuzz testing", "Text",
 CellChangeTimes->{
  3.794065398654872*^9, {3.794065502418302*^9, 3.794065545991666*^9}},
 CellID->948909093,ExpressionUUID->"1a643b2d-5025-44e8-963f-f6a06474c03e"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell["1.1", "Section",
 CellChangeTimes->{{3.809354176845182*^9, 
  3.8093541771780157`*^9}},ExpressionUUID->"1f169eca-07c0-4c84-b703-\
1009cc145faa"],

Cell["September 30, 2020", "Text",
 CellChangeTimes->{{3.8093541837696867`*^9, 3.809354191745969*^9}, {
  3.810483921733769*^9, 
  3.810483922430772*^9}},ExpressionUUID->"4b9896af-8d20-4c5e-88c5-\
508022e425c0"],

Cell[CellGroupData[{

Cell["API changes", "Subsection",
 CellChangeTimes->{{3.809354204476325*^9, 
  3.809354207855584*^9}},ExpressionUUID->"23548cdc-571f-4c28-ad74-\
debd070c8bb4"],

Cell["\<\
Return a Rational when parsing something like 1*^-2
This returned an Integer before.\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 3.809354279878628*^9}, 
   3.80935445896213*^9},ExpressionUUID->"7fd3312d-3c73-4a5b-86cb-\
4795aaf4286d"],

Cell["Add Token`PercentPercent as a variable length token", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354284255492*^9}},ExpressionUUID->"9b456a18-d28c-4499-a9e4-\
e8eca83c207f"],

Cell["Add CompoundNode", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.80935428944215*^9}},ExpressionUUID->"175ac665-ae48-48fc-9e13-\
08cc404fbf62"],

Cell["Add CodeSyntaxQ, CodeSyntaxCSTQ, CodeStructuralSyntaxQ", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093542953996983`*^9}},ExpressionUUID->"1e14e26b-4e70-47e4-bdb4-\
2a9b2f74204f"],

Cell["Add Token`Error`UnterminatedFileString", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354299853011*^9}},ExpressionUUID->"d5934354-446a-4eee-8ee4-\
62fd4705c281"],

Cell["Add Token`Boxes`CommentContent", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354306420898*^9}},ExpressionUUID->"56f7bd1e-298b-4364-beeb-\
a17d234d6892"],

Cell["Add UnterminatedTokenErrorNeedsReparseNode", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354312894446*^9}},ExpressionUUID->"767036d8-d67c-42bd-9098-\
4835c3167121"],

Cell["Add Token`Error`UnexpectedCloser", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093543158300858`*^9}},ExpressionUUID->"e7c5f25e-3461-420a-988b-\
65402567492d"],

Cell["Add GroupMissingOpenerNode (only used in boxes)", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354322698182*^9}},ExpressionUUID->"3f0308e1-18fd-40a5-b64c-\
323100293bcb"],

Cell["Add CallMissingCloserNode", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354328338274*^9}},ExpressionUUID->"a3707616-06ea-4e5e-915b-\
49fa99a26892"],

Cell["Add QuaternaryNode and FragmentNode", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093543350296164`*^9}},ExpressionUUID->"675bd629-d3d3-4d20-9e6b-\
e4acedb01873"],

Cell["\<\
Add new nodes and tags: MemoizedSetDelayed, MemoizedTagSetDelayed, \
UnterminatedGroupNode, UnterminatedCallNode\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354342470668*^9}},ExpressionUUID->"c0abe661-dcfd-4247-b8f1-\
c85bde70fe97"],

Cell["\<\
Add \"TabWidth\" option to functions and correctly calculate columns using \
tab stops\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093543452276917`*^9}},ExpressionUUID->"fc156e1b-e463-4f4f-99c0-\
db52ecdf18fc"],

Cell["Graduate SourceConvention option to be a symbol", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354349790608*^9}},ExpressionUUID->"193c4220-0320-431e-b61b-\
6f3f19b6fae9"],

Cell["Add -check flag to command-line parser", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354353030775*^9}},ExpressionUUID->"759b404f-5a33-4670-b858-\
5409a2541dd3"],

Cell["\<\
Remove OptionalDefaultNode and just use Token`UnderDot directly.\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093543566907787`*^9}},ExpressionUUID->"c1ca6e76-6efc-4239-a6d2-\
b8c92ca58abf"],

Cell["\<\
Remove Token`LineContinuation. The actual line continuation string is now \
always attached to the previous or next token.
Currently, it's always the next token, but that is an implementation detail.\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354363463333*^9}},ExpressionUUID->"e9da4f46-227f-47a8-baa4-\
de8ded9df0ef"],

Cell["\<\
Remove the 3 fake line continuation code points. These are no longer used.\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354365984447*^9}},ExpressionUUID->"e6614b90-7d55-43fe-b9a6-\
1d3e5dc3a200"],

Cell["\<\
Remove UnexpectedLineContinuation FormatIssue. This is no longer used.\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354369192555*^9}},ExpressionUUID->"71aaa97b-a73b-49dc-b5d0-\
adb799fc87d2"],

Cell["\<\
NOTE: line continuations are NOT currently handled in places where \
SourceCharacters are used directly: comments and file stringification. This \
is not relevant for comments, but it is wrong to not handle line \
continuations during file stringification.\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.809354372041494*^9}},ExpressionUUID->"a1947d96-d12c-46e3-a0df-\
bf32bb8ff4cc"],

Cell["Propagate EncodingIssue in a few places", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093543754517736`*^9}},ExpressionUUID->"b106baf5-47b0-481e-90c4-\
97799a41fe91"],

Cell["Treat EqualDot as a proper binary operator", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 
  3.8093543773864403`*^9}},ExpressionUUID->"5b0604a1-0f28-43b2-87c5-\
89c5c0243b6f"],

Cell["Add new |-> operator for Function.", "Text",
 CellChangeTimes->{{3.8104839430469713`*^9, 
  3.8104839544772663`*^9}},ExpressionUUID->"44b7690b-7594-4c4a-b95f-\
8e05a7485860"]
}, Open  ]],

Cell[CellGroupData[{

Cell["Performance improvements", "Subsection",
 CellChangeTimes->{{3.809354224848143*^9, 
  3.809354228534137*^9}},ExpressionUUID->"78f1d16e-0f2d-424e-9575-\
5087f91e3d51"],

Cell["Improve stack shim performance", "Text",
 CellChangeTimes->{{3.809354389015112*^9, 
  3.809354405773572*^9}},ExpressionUUID->"fa88c221-411e-4310-92ef-\
cbef7a3e1ce0"],

Cell["\<\
Use results from some profiling to speed up tokenizing numbers.
\
\>", "Text",
 CellChangeTimes->{{3.809354389015112*^9, 
  3.809354407944508*^9}},ExpressionUUID->"5fe3641b-4b58-45fe-80e7-\
24d1530f054d"],

Cell["\<\
Dynamically set GroupMissingCloserNeedsReparseNode and \
UnterminatedTokenErrorNeedsReparseNode while parsing, instead of doing \
Replace.\
\>", "Text",
 CellChangeTimes->{{3.809354389015112*^9, 
  3.809354413872472*^9}},ExpressionUUID->"25021f32-b4b6-4f3f-8d5b-\
d9ca30051389"],

Cell["Use Normal[ReadByteArray[#]]& instead of Import[#, \"Byte\"]", "Text",
 CellChangeTimes->{{3.809354389015112*^9, 
  3.80935441563771*^9}},ExpressionUUID->"c90090d3-75f5-4b5b-a2b2-\
5d98ad441f03"],

Cell["\<\
Remove asserts from aggregate and try to not use local variables when possible\
\>", "Text",
 CellChangeTimes->{{3.809354389015112*^9, 
  3.809354416916641*^9}},ExpressionUUID->"fb3fc892-63c1-4532-9ac8-\
5386149d1b90"]
}, Open  ]],

Cell[CellGroupData[{

Cell["Error handling", "Subsection",
 CellChangeTimes->{{3.8093542349963408`*^9, 
  3.809354236540352*^9}},ExpressionUUID->"9190aa00-6791-4f7f-ac04-\
818403ae96a4"],

Cell["\<\
Add better handling for syntax with .. and ... where backtracking is needed
Examples are 2^^.. and 123*^2..\
\>", "Text",
 CellChangeTimes->{{3.809354397378069*^9, 
  3.8093544290314007`*^9}},ExpressionUUID->"f29ef3b6-bddc-46a1-bf00-\
e26039cce8e3"],

Cell["\<\
Continue parsing numbers with invalid bases or unrecognized digits (because \
of the base)\
\>", "Text",
 CellChangeTimes->{{3.809354397378069*^9, 
  3.80935443360399*^9}},ExpressionUUID->"10ed6759-f923-43b1-a5d9-\
9ccfcafedf96"]
}, Open  ]],

Cell[CellGroupData[{

Cell["Miscellaneous", "Subsection",
 CellChangeTimes->{{3.80935424490331*^9, 
  3.8093542482496634`*^9}},ExpressionUUID->"b7a3e7da-d6cc-4d0e-a5da-\
81442bc1d37b"],

Cell["\<\
A massive number of minor bug fixes, typos fixes, and reorganizations, tweaks \
and cleanup\
\>", "Text",
 CellChangeTimes->{{3.809354250533329*^9, 3.809354255535831*^9}, {
  3.809354438133144*^9, 
  3.8093544405404453`*^9}},ExpressionUUID->"7b3c7702-aa73-4e4c-af35-\
ca956cb5594e"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell["1.1.1", "Section",
 CellChangeTimes->{{3.809354176845182*^9, 3.8093541771780157`*^9}, {
  3.8111746736510143`*^9, 
  3.811174674000601*^9}},ExpressionUUID->"d49cefef-f2be-4382-92b2-\
c7bc71f1ac00"],

Cell["December 8, 2020", "Text",
 CellChangeTimes->{{3.8093541837696867`*^9, 3.809354191745969*^9}, {
  3.810483921733769*^9, 3.810483922430772*^9}, {3.8111746789395103`*^9, 
  3.811174682619111*^9}, {3.8166253152047997`*^9, 
  3.8166253176034718`*^9}},ExpressionUUID->"c6080b08-63ab-4e64-be1d-\
a4ad01c93a7f"],

Cell["Included in Mathematica 12.2", "Text",
 CellChangeTimes->{{3.816625918791564*^9, 3.816625928601293*^9}},
 CellID->94465146,ExpressionUUID->"1afd5c73-1036-4168-b288-b41c014237c1"],

Cell[CellGroupData[{

Cell["Fixes", "Subsection",
 CellChangeTimes->{{3.809354204476325*^9, 3.809354207855584*^9}, {
  3.81117468558387*^9, 
  3.8111746863533*^9}},ExpressionUUID->"38f94879-65d7-4463-b749-ef35d999ca03"],

Cell["\<\
The parser side of what needs to be fixed for 398836: implicit Times tokens \
do need to be present in the box cst.

I had been remiss in treating unhandled boxes as implicit Times.

So start doing that now. But do the easy thing and simply riffle in \
ImplicitTimes tokens.

This is not strictly correct, but the analysis needed to properly insert \
ImplicitTokens tokens is too complicated in the current location.

Note: Mixing explicit Times operators and implicit Times does not currently \
work\
\>", "Text",
 CellChangeTimes->{{3.809354271765732*^9, 3.809354279878628*^9}, 
   3.80935445896213*^9, {3.811174709026059*^9, 
   3.811174765876552*^9}},ExpressionUUID->"7afff1bc-87ba-4399-a1da-\
8b120f7bf30f"],

Cell["Fix LinearSyntaxBlob in wrong context", "Text",
 CellID->1421219801,ExpressionUUID->"29498e7d-9a51-45a1-93d1-87ce5442aa84"]
}, Open  ]]
}, Open  ]],

Cell[CellGroupData[{

Cell["1.2", "Section",
 CellChangeTimes->{{3.822824221714437*^9, 3.822824223655924*^9}},
 CellID->1563112065,ExpressionUUID->"91dc89df-08ce-4c9b-ba74-97d033092c5c"],

Cell["March 25, 2021", "Text",
 CellChangeTimes->{{3.822824233793511*^9, 3.822824249038164*^9}, {
  3.825677249810317*^9, 3.8256772534210787`*^9}},
 CellID->1652935849,ExpressionUUID->"5cf92cae-a1c1-405c-a6b2-2920fcd36e21"],

Cell["Provide more ASCII approximations for long names", "Text",
 CellChangeTimes->{{3.8228242562586*^9, 3.822824256805437*^9}, 
   3.825680140078334*^9},
 CellID->373638291,ExpressionUUID->"93d11974-3043-486e-abf9-5a7caf723e7c"],

Cell["\<\
Handle linear syntax as tokens, but they are unsupported

A workflow is removing the \\( \\) from a LinearSyntaxBlob and then \
tokenizing.\
\>", "Text",
 CellID->1591740512,ExpressionUUID->"1dc7f2dd-dd6b-4efb-baf5-a28ca56f9920"],

Cell[">> and >>> should not give top-level lints", "Text",
 CellID->529034666,ExpressionUUID->"a4f8597b-312b-4137-9cc0-a472e959bbc8"],

Cell["\<\
Use the source of just the ; when reporting top-level CompoundExpression\
\>", "Text",
 CellID->903332882,ExpressionUUID->"31c8f40a-18fc-42ae-8bd3-be4b0833bf93"],

Cell["Add CodeStructuralSyntaxAggQ", "Text",
 CellID->2031112904,ExpressionUUID->"3a862d5f-069f-45f2-a5e7-111b6c2ee88b"],

Cell["\<\
Move stray comma handling back to concrete parser and teach -check flag to \
fail with stray commas\
\>", "Text",
 CellID->796759785,ExpressionUUID->"73001319-d776-4c4c-9de8-7a0138667cf8"],

Cell["\<\
For unexpected characters, display both the actual encoded representation and \
the escaped form.

This will help with diagnosing problems with invisible characters\
\>", "Text",
 CellID->122343007,ExpressionUUID->"e3c202ab-2d4b-4ed2-b446-1df26e109896"],

Cell["\<\
Add a new Kernel file RowBox.wl that is generated at build-time.

Hard-code more values for parseBox

In the fall-through cases of parseBox, be more efficient with testing \
different string cases

Remove StringifyMode 3 (passthrough). Just hard-code these cases\
\>", "Text",
 CellID->1741268195,ExpressionUUID->"4a7965f5-b514-4a4a-9692-b690b7c7cded"],

Cell["\<\
Allow \"FileFormat\" -> \"Script\" for ignoring shebang in .wls files\
\>", "Text",
 CellID->2062155509,ExpressionUUID->"d7908dd7-584a-4ff1-a2ba-4b1bcd88a70a"],

Cell["Provide better error reporting for \\Alpha]", "Text",
 CellID->409060830,ExpressionUUID->"8a92ef73-7e76-4ab7-83b1-4c70682ef970"],

Cell["\<\
Add ScopingData[ast] function for gathering information about scoping \
constructs\
\>", "Text",
 CellID->1705548138,ExpressionUUID->"e000f52b-f922-41a2-a8bf-da12acd734f5"],

Cell["\<\
Introduce DefinitionSymbols function and start using it

This is a saner function than the older DeclarationName\
\>", "Text",
 CellID->535835210,ExpressionUUID->"53207fe2-e1ce-41e3-b138-96d7ecfa6cd9"],

Cell["Update ASCII replacements", "Text",
 CellID->714315324,ExpressionUUID->"985f2e60-4dfb-4f8a-a038-f05f4b2c9c25"],

Cell["Provide some selectors for CodeAction objects", "Text",
 CellID->1622915997,ExpressionUUID->"6ebc12d1-6821-4ffa-902a-fd03e1870f0a"],

Cell["\<\
Move ToInputFormString

Compile` also has a ToInputFormString symbol, so to prevent shadowing messages,
move CodeParser`ToInputFormString to CodeParser`ToString`ToInputFormString
and rely on CodeParser`ToString` not being on $ContextPath (unless explicitly \
loaded, of course)\
\>", "Text",
 CellID->1159361032,ExpressionUUID->"0567f020-3891-49e1-bc60-202b9a99eb31"],

Cell["Insert \"FileName\" into CSTs", "Text",
 CellID->1261735593,ExpressionUUID->"d9319c9f-a115-40dd-900d-767aa262f75a"],

Cell["\<\
Allow CodeConcreteParse of Cells, Notebooks, CellObjects, and NotebookObjects\
\
\>", "Text",
 CellID->1588140965,ExpressionUUID->"19b8d533-ff10-405f-85b4-8e0e6286f647"],

Cell["\<\
Lower confidence of package-related issues that are not 100% errors\
\>", "Text",
 CellID->800582779,ExpressionUUID->"9c37f701-340f-452b-b6a4-7ed83a7e7fee"],

Cell[CellGroupData[{

Cell["Fixes", "Subsection",
 CellChangeTimes->{{3.8256802149507723`*^9, 3.8256802156400547`*^9}},
 CellID->1753847131,ExpressionUUID->"26db4528-5cb7-421a-bf6c-c5e76c8d0c13"],

Cell["\<\
Fix warning from MSVC: using universal-character-name \\u2423 for \
\[SpaceIndicator] was technically not correct, since MSVC is setup with a \
different code page by default\
\>", "Text",
 CellID->1020385269,ExpressionUUID->"a991cfd5-c466-4015-b2bd-b82056b84dab"],

Cell["Fix handling #\"foo\"", "Text",
 CellID->335399491,ExpressionUUID->"7a8c0c44-c7c6-47c5-a380-23542a0f34ab"],

Cell["\<\
Fix bug 404282, and related issues

CodeConcreteParse[\"\\\"\\r\"] would give messages because the \\r newline \
was not being handled correctly

Fix that, and also fix issues with \\r\\n newlines where the indices from the \
SourceCharacterIndex were wrong because of treating \\r\\n as a single source \
character\
\>", "Text",
 CellID->990215763,ExpressionUUID->"37a0ce8f-a5a4-468a-b4ac-ce6a6b2cb844"],

Cell["Handle TernaryTilde at top-level", "Text",
 CellID->1383442599,ExpressionUUID->"f1c3d5c3-0d1e-49a9-92e4-d3df1cbf8b71"],

Cell["Add UpSet and UpSetDelayed to top-level definitions", "Text",
 CellID->1064063738,ExpressionUUID->"f0b89659-8e7d-495a-a01d-9ce1cb64e113"],

Cell["\<\
Syntax such as Attributes[foo] = {HoldAll} is a definition for foo and not \
for Attributes\
\>", "Text",
 CellID->1736581073,ExpressionUUID->"4f4b2daf-f64b-48ac-8788-4b69c0e9a0f0"],

Cell["\<\
.wl files may be scripts with #! or not, so must handle

In the doc page:
tutorial/FilesStreamsAndExternalOperations

there is a paragraph that starts:

\"Scripts may be stored either in normal .wl package files or in dedicated \
.wls script files.\"\
\>", "Text",
 CellID->267847534,ExpressionUUID->"b3c4d2c4-b2a6-4134-b85e-636b4e97ac09"],

Cell["\<\
Fix 406933: specific comment makes CodeParser give messages and go into \
infinite loop\
\>", "Text",
 CellID->911070327,ExpressionUUID->"6e56f2db-798d-44f3-ba13-1e7734c478e6"]
}, Open  ]]
}, Open  ]]
}, Open  ]]
},
WindowSize->{968, 951},
WindowMargins->{{26, Automatic}, {Automatic, 27}},
FrontEndVersion->"12.3 for Mac OS X x86 (64-bit) (March 21, 2021)",
StyleDefinitions->FrontEnd`FileName[{"Wolfram"}, "TutorialPageStyles.nb", 
  CharacterEncoding -> "UTF-8"],
ExpressionUUID->"5b3bd2fc-9440-4a4b-9d26-285de4d2ac82"
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{}
*)
(*CellTagsIndex
CellTagsIndex->{}
*)
(*NotebookFileOutline
Notebook[{
Cell[558, 20, 599, 14, 24, "History",ExpressionUUID->"507c2116-ef7d-4f66-85ad-47bbf07d1504",
 CellID->1247902091],
Cell[CellGroupData[{
Cell[1182, 38, 123, 1, 29, "CategorizationSection",ExpressionUUID->"85e1d00d-d9b8-43b9-b927-52cba8ad4c59",
 CellID->1122911449],
Cell[1308, 41, 136, 2, 30, "Categorization",ExpressionUUID->"78748b53-90a8-46be-abe0-b23b1761d0c8",
 CellID->686433507],
Cell[1447, 45, 146, 2, 30, "Categorization",ExpressionUUID->"d9364d05-45cd-420c-82b1-8307f4de44f6",
 CellID->605800465],
Cell[1596, 49, 135, 2, 30, "Categorization",ExpressionUUID->"e8da193c-9af4-40a4-a498-0fe46edd6b7b",
 CellID->468444828],
Cell[1734, 53, 132, 1, 30, "Categorization",ExpressionUUID->"2271b414-6ca3-49d7-9406-56fa1e1adec6"]
}, Closed]],
Cell[CellGroupData[{
Cell[1903, 59, 111, 1, 19, "KeywordsSection",ExpressionUUID->"98480eda-0f43-4d66-99e7-fc84fd66a2b6",
 CellID->1427428552],
Cell[2017, 62, 100, 1, 19, "Keywords",ExpressionUUID->"416019cf-70a5-44b4-bea5-7f3e3b837693",
 CellID->1251852827]
}, Closed]],
Cell[CellGroupData[{
Cell[2154, 68, 108, 1, 19, "DetailsSection",ExpressionUUID->"29e4596c-b7af-4b17-8a28-c3e8a08499bc",
 CellID->307771771],
Cell[2265, 71, 118, 2, 30, "Details",ExpressionUUID->"2311482f-0482-4555-8f60-6c2d451666f4",
 CellID->218895918],
Cell[2386, 75, 124, 2, 30, "Details",ExpressionUUID->"bd02259f-0977-4216-a571-c929f9df94e9",
 CellID->350963985],
Cell[2513, 79, 121, 2, 30, "Details",ExpressionUUID->"43065996-218e-46be-b80e-3680a6a2022f",
 CellID->795871300],
Cell[2637, 83, 126, 2, 30, "Details",ExpressionUUID->"47e25afa-a939-436f-a95b-b99ff433277e",
 CellID->199739161],
Cell[2766, 87, 115, 2, 30, "Details",ExpressionUUID->"e5e816c9-bef9-4752-a295-1c5b7288ed07",
 CellID->40625308],
Cell[2884, 91, 116, 2, 30, "Details",ExpressionUUID->"1fecf6cb-6a32-46c7-996c-02334896834a",
 CellID->357121918],
Cell[3003, 95, 117, 2, 30, "Details",ExpressionUUID->"b676444c-5aaa-41a5-acd1-d4de6c3bd8dd",
 CellID->35949532],
Cell[3123, 99, 133, 2, 30, "Details",ExpressionUUID->"865437c1-2b15-4f6f-80af-ef7a821a01ae",
 CellID->929432370],
Cell[3259, 103, 122, 2, 30, "Details",ExpressionUUID->"d4de7d37-ebbd-4d92-a77d-cfb416ae5fab",
 CellID->240026365]
}, Closed]],
Cell[CellGroupData[{
Cell[3418, 110, 261, 4, 106, "Title",ExpressionUUID->"ef869736-cb00-41d2-84b8-4577b2664a6d",
 CellID->509267359],
Cell[CellGroupData[{
Cell[3704, 118, 214, 3, 43, "Section",ExpressionUUID->"e47fb6b5-1ec7-435f-a7ad-2633b06de611",
 CellID->991890208],
Cell[3921, 123, 219, 3, 23, "Text",ExpressionUUID->"0f137875-9cd7-4c1e-a21b-a72324059f1c",
 CellID->1930657842],
Cell[4143, 128, 216, 2, 23, "Text",ExpressionUUID->"8aaabbfc-b860-4571-8618-ddd9dceedf33",
 CellID->425069744],
Cell[4362, 132, 261, 3, 23, "Text",ExpressionUUID->"bf49a850-f4f0-401b-9b11-b62eae203322",
 CellID->1616577486],
Cell[4626, 137, 265, 3, 23, "Text",ExpressionUUID->"854947fa-b82a-4e99-b4e5-473b94ae51ec",
 CellID->2002189005],
Cell[4894, 142, 241, 3, 23, "Text",ExpressionUUID->"d5e81a30-5d6c-4d21-9c2a-b505c0a2fef7",
 CellID->1869342192],
Cell[5138, 147, 275, 5, 23, "Text",ExpressionUUID->"292a1793-15bf-4d75-891d-eb275487dc88",
 CellID->348465334],
Cell[5416, 154, 452, 10, 168, "Text",ExpressionUUID->"3e00b5ed-c76d-4890-aca3-bb4c7403eb20",
 CellID->468963169],
Cell[CellGroupData[{
Cell[5893, 168, 176, 2, 23, "Text",ExpressionUUID->"c68803e2-3559-46fa-b136-fd2d1f6a9590",
 CellID->598996893],
Cell[6072, 172, 484, 13, 191, "Program",ExpressionUUID->"09f2f87a-73fc-4966-ab54-9b0a2da9e92a",
 CellID->2084927162]
}, Open  ]],
Cell[6571, 188, 273, 5, 23, "Text",ExpressionUUID->"f469fccd-7d6a-4198-b5d1-6d6f646c7a06",
 CellID->880143635],
Cell[6847, 195, 307, 6, 23, "Text",ExpressionUUID->"741801c9-bc34-408d-9ad2-3b6d25fbd364",
 CellID->706712909],
Cell[CellGroupData[{
Cell[7179, 205, 235, 3, 23, "Text",ExpressionUUID->"2f75cbd6-1a08-44e0-9b38-11264b744ce2",
 CellID->2139293653],
Cell[7417, 210, 165, 2, 41, "Program",ExpressionUUID->"bd820781-76eb-419c-8535-582ba0d0dc76",
 CellID->1937207897]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[7631, 218, 263, 4, 43, "Section",ExpressionUUID->"483239a7-a6f7-4401-94d8-0d14ce27f47b",
 CellID->1336191714],
Cell[7897, 224, 317, 4, 23, "Text",ExpressionUUID->"3b8c20d6-a19a-467d-a5ee-9a4795175c14",
 CellID->1137640519],
Cell[8217, 230, 278, 4, 23, "Text",ExpressionUUID->"ea3cd1a2-4651-48cf-a308-dc25c43f67b6",
 CellID->1226865332],
Cell[8498, 236, 299, 4, 23, "Text",ExpressionUUID->"e9e1eed9-77fa-422c-bfa9-01f1aa46c951",
 CellID->1935140077],
Cell[8800, 242, 216, 3, 23, "Text",ExpressionUUID->"460c8d7e-d5b8-486c-8e09-b3630b43da71",
 CellID->259440324],
Cell[9019, 247, 1018, 15, 154, "Text",ExpressionUUID->"9c6f5150-5a7c-4bf4-a2dc-81abf6791a54",
 CellID->1021722058],
Cell[10040, 264, 242, 3, 23, "Text",ExpressionUUID->"d4361426-c3de-47a7-9024-ba43b497c949",
 CellID->803387394],
Cell[10285, 269, 216, 3, 23, "Text",ExpressionUUID->"b41d027e-41e5-4506-b504-f0430c37193e",
 CellID->1302242269],
Cell[10504, 274, 225, 3, 23, "Text",ExpressionUUID->"19b89087-baa1-4856-b9a0-be5a0b32eaaa",
 CellID->1779968506],
Cell[10732, 279, 263, 5, 23, "Text",ExpressionUUID->"0f309741-7ce8-42c8-87ed-ad1dfa487133",
 CellID->1483477632],
Cell[10998, 286, 255, 5, 23, "Text",ExpressionUUID->"a6b5f325-a7ce-4707-a4b0-c3fe64641414",
 CellID->523419354],
Cell[11256, 293, 232, 3, 23, "Text",ExpressionUUID->"e8cb699c-a61f-4bf8-a11a-8d86b927a274",
 CellID->1016064566],
Cell[11491, 298, 192, 2, 23, "Text",ExpressionUUID->"8754d2c5-0216-49c1-9493-7541ad81da8b",
 CellID->207199818],
Cell[11686, 302, 215, 2, 23, "Text",ExpressionUUID->"f3126fd5-3880-4a29-840c-24cb167f67d7",
 CellID->1336349339],
Cell[11904, 306, 193, 2, 23, "Text",ExpressionUUID->"9995fe94-4158-4798-b66f-c781befa9e2b",
 CellID->1639360247],
Cell[12100, 310, 303, 5, 40, "Text",ExpressionUUID->"4c958f0f-2266-4400-8790-cf4a4f6d07cc",
 CellID->512480319],
Cell[12406, 317, 516, 9, 103, "Text",ExpressionUUID->"91a5509d-12b6-4555-8669-10f65c2f8d6f",
 CellID->1847296963],
Cell[12925, 328, 607, 9, 74, "Text",ExpressionUUID->"9214e5ae-eed3-4a91-ae14-67c4cbbb8e21",
 CellID->1348972462]
}, Open  ]],
Cell[CellGroupData[{
Cell[13569, 342, 167, 2, 43, "Section",ExpressionUUID->"1a541291-54b6-4e09-9814-0d0966a9b2d0",
 CellID->109968439],
Cell[13739, 346, 267, 4, 23, "Text",ExpressionUUID->"b64f09eb-1f86-4848-b488-21b54e5dd995",
 CellID->1403617853],
Cell[14009, 352, 540, 11, 110, "Text",ExpressionUUID->"20de425b-2c7e-466d-ae57-6158bf3b4b86",
 CellID->1679074208],
Cell[14552, 365, 233, 5, 52, "Text",ExpressionUUID->"91f038a1-bd02-44f0-9838-4a1e9a52b3df",
 CellID->117608629],
Cell[14788, 372, 185, 2, 23, "Text",ExpressionUUID->"784dc420-5eae-4527-b67a-4301a1d07a57",
 CellID->963272363],
Cell[14976, 376, 396, 8, 81, "Text",ExpressionUUID->"8b24e54a-74f1-4218-ab10-49bc9b2fced8",
 CellID->1986873855],
Cell[15375, 386, 203, 2, 23, "Text",ExpressionUUID->"caff7f2e-200b-410c-9e3d-6bcfb022544c",
 CellID->18170135],
Cell[15581, 390, 189, 2, 23, "Text",ExpressionUUID->"df2d2d5f-71c5-4bdb-b728-f04f88135bfd",
 CellID->442781071],
Cell[15773, 394, 177, 2, 23, "Text",ExpressionUUID->"639c696e-23e1-45ab-a6e0-03d5ed3006eb",
 CellID->790623442]
}, Open  ]],
Cell[CellGroupData[{
Cell[15987, 401, 218, 3, 43, "Section",ExpressionUUID->"dedc14ad-8301-42d9-9766-73d37d6cb32b",
 CellID->1029534416],
Cell[16208, 406, 365, 5, 23, "Text",ExpressionUUID->"5b12f4af-cba1-47cc-90bd-11bc671540ed",
 CellID->1109185833],
Cell[16576, 413, 255, 3, 23, "Text",ExpressionUUID->"8cc1932d-42ee-4a58-851b-8582bfa0ee84",
 CellID->241710820],
Cell[16834, 418, 263, 5, 23, "Text",ExpressionUUID->"cb24878a-0a7c-4651-85c5-8459a02557dd",
 CellID->1542175263],
Cell[17100, 425, 287, 4, 23, "Text",ExpressionUUID->"9165cef9-9422-496a-b3f2-5185b36d7698",
 CellID->1359509598],
Cell[17390, 431, 203, 2, 23, "Text",ExpressionUUID->"96cff7e1-5fcf-4c29-88a8-cff56559639c",
 CellID->51809506],
Cell[17596, 435, 209, 2, 23, "Text",ExpressionUUID->"5cb55541-f55d-4869-aa24-c4d0a8055beb",
 CellID->1031490307],
Cell[17808, 439, 180, 2, 23, "Text",ExpressionUUID->"8225508e-0d70-4f3f-9df5-c228279b2d2c",
 CellID->1769591165],
Cell[17991, 443, 203, 2, 23, "Text",ExpressionUUID->"18ffed53-b2f9-4f09-a5b6-e94a1c2ee3e6",
 CellID->1017682852],
Cell[18197, 447, 198, 2, 23, "Text",ExpressionUUID->"e2089201-89ee-454e-bf20-1fc317f0d02f",
 CellID->1635928856],
Cell[18398, 451, 182, 2, 23, "Text",ExpressionUUID->"8c9d554f-c7e4-4a85-a4ca-54aba5e23a47",
 CellID->823150251],
Cell[18583, 455, 289, 5, 40, "Text",ExpressionUUID->"e3107e34-f940-4cb9-b75e-151b32794c2b",
 CellID->596614583],
Cell[18875, 462, 177, 2, 23, "Text",ExpressionUUID->"af008b65-81ea-426c-a558-190a6c8bb0b7",
 CellID->700148638]
}, Open  ]],
Cell[CellGroupData[{
Cell[19089, 469, 267, 4, 43, "Section",ExpressionUUID->"0c0fcbf5-4de5-4165-b07a-54fc3d1aadea",
 CellID->1268744624],
Cell[19359, 475, 463, 6, 23, "Text",ExpressionUUID->"316b4c47-9c2b-400c-818a-1106c6dafe5f",
 CellID->1425764505],
Cell[19825, 483, 206, 2, 23, "Text",ExpressionUUID->"66619df0-1547-495f-b806-706c549b7a42",
 CellID->860574622],
Cell[20034, 487, 239, 4, 23, "Text",ExpressionUUID->"2f76a735-aa23-4dfd-a004-fd7d4d5d5e5b",
 CellID->375309409],
Cell[20276, 493, 286, 5, 23, "Text",ExpressionUUID->"48946cf4-e287-4fee-95f6-e3a48faae2ac",
 CellID->665765824],
Cell[20565, 500, 215, 2, 23, "Text",ExpressionUUID->"edb0a2cb-ac86-41e5-bee5-30f8bd0aba34",
 CellID->1136403098],
Cell[20783, 504, 178, 2, 23, "Text",ExpressionUUID->"41bb7cd7-1e19-4201-aa4d-e5581f4ee113",
 CellID->1954795315]
}, Open  ]],
Cell[CellGroupData[{
Cell[20998, 511, 313, 4, 43, "Section",ExpressionUUID->"9fcafdee-3ac6-49c6-a043-922d4a3019dd",
 CellID->794449192],
Cell[21314, 517, 564, 8, 23, "Text",ExpressionUUID->"2e260e18-d618-4c96-9d20-70b948c6171b",
 CellID->1401736545],
Cell[21881, 527, 211, 2, 23, "Text",ExpressionUUID->"e469aaaf-ad43-4ebb-aab3-f17edca586eb",
 CellID->1479066077],
Cell[22095, 531, 186, 2, 23, "Text",ExpressionUUID->"ea432f9e-b98a-4f81-988b-0565e2fa4c5d",
 CellID->1540342114],
Cell[22284, 535, 195, 2, 23, "Text",ExpressionUUID->"17309f87-7bed-4e21-a73b-4defb65b1acd",
 CellID->614545413],
Cell[22482, 539, 236, 4, 23, "Text",ExpressionUUID->"6fe11ad2-49f7-48d1-830b-8dc75f391812",
 CellID->1415897868],
Cell[22721, 545, 287, 5, 40, "Text",ExpressionUUID->"85db97b4-1582-48e5-bbc1-aebf2571afc7",
 CellID->729175069],
Cell[23011, 552, 195, 2, 23, "Text",ExpressionUUID->"d1e9ba64-ea9d-45ba-a37e-291ad99f8ff4",
 CellID->1703694901],
Cell[23209, 556, 208, 3, 23, "Text",ExpressionUUID->"1821a4ec-3569-493e-8918-555b8464bf3e",
 CellID->1600735656],
Cell[23420, 561, 181, 2, 23, "Text",ExpressionUUID->"ffe18076-fa3b-4b81-ad81-de0862edf780",
 CellID->2036524423],
Cell[23604, 565, 178, 2, 23, "Text",ExpressionUUID->"c850d70d-f6c0-4ec4-9632-995df994ec8f",
 CellID->1271611475]
}, Open  ]],
Cell[CellGroupData[{
Cell[23819, 572, 362, 5, 43, "Section",ExpressionUUID->"a7e52103-180c-410d-a2a0-8f608b5f2cf8",
 CellID->522435368],
Cell[24184, 579, 663, 9, 23, "Text",ExpressionUUID->"9dc5c633-5be1-4649-9e8f-6ceff2a83b70",
 CellID->1658081040],
Cell[24850, 590, 250, 5, 23, "Text",ExpressionUUID->"ca598cf6-d922-41a2-901f-61feda3090c3",
 CellID->1210581096],
Cell[25103, 597, 181, 2, 23, "Text",ExpressionUUID->"5b002821-d371-45f2-8122-d2c32fb83fb3",
 CellID->976408794],
Cell[25287, 601, 233, 4, 23, "Text",ExpressionUUID->"fdd8d166-b4c2-4545-b8da-871a349708ef",
 CellID->1580054031],
Cell[25523, 607, 214, 2, 23, "Text",ExpressionUUID->"abd3ced6-d0b3-46bd-a373-2b1df736af7a",
 CellID->185320215],
Cell[25740, 611, 238, 3, 23, "Text",ExpressionUUID->"9f1939a0-4b7b-4340-902d-d057571c602e",
 CellID->825565355],
Cell[25981, 616, 177, 2, 23, "Text",ExpressionUUID->"9468220b-927d-4ffd-8ed8-b8e561a1bf96",
 CellID->385078218],
Cell[26161, 620, 202, 2, 23, "Text",ExpressionUUID->"62b52337-f239-4c1c-9848-1de672aeb5aa",
 CellID->1641381515],
Cell[26366, 624, 213, 2, 23, "Text",ExpressionUUID->"95093294-32f4-440a-a28b-a1918968e19d",
 CellID->124193243],
Cell[26582, 628, 213, 2, 23, "Text",ExpressionUUID->"0c259cc1-8df5-4e7e-a19f-229bdfb9a358",
 CellID->2109213864],
Cell[26798, 632, 181, 2, 23, "Text",ExpressionUUID->"70186075-37fb-4256-aa4e-41b48685f9ac",
 CellID->1044851219],
Cell[26982, 636, 192, 2, 23, "Text",ExpressionUUID->"a9904532-edd6-452a-bf30-1510b7cf8bc5",
 CellID->840656214],
Cell[27177, 640, 205, 2, 23, "Text",ExpressionUUID->"21aef223-4e04-44a2-b5d0-8446452224f5",
 CellID->614075085],
Cell[27385, 644, 216, 2, 23, "Text",ExpressionUUID->"d24651f2-f2a5-4054-bba8-23fec64bb060",
 CellID->2101029760],
Cell[27604, 648, 217, 2, 23, "Text",ExpressionUUID->"8ecb51a9-aaf9-41e8-9ae2-8a6fefcdb32b",
 CellID->933568699],
Cell[27824, 652, 203, 2, 23, "Text",ExpressionUUID->"e678ca0b-27db-4efa-b89a-5356195e3feb",
 CellID->973599111],
Cell[28030, 656, 227, 4, 23, "Text",ExpressionUUID->"47222c4a-5957-4bf5-9b49-ef11f78539d5",
 CellID->1602352084],
Cell[28260, 662, 219, 2, 23, "Text",ExpressionUUID->"c94cf5e6-29da-439c-b516-901dfef4faaf",
 CellID->1286542408],
Cell[28482, 666, 217, 2, 23, "Text",ExpressionUUID->"9672df60-4fe2-4e43-b19e-11ec9c86497a",
 CellID->2052893260],
Cell[28702, 670, 189, 2, 23, "Text",ExpressionUUID->"553c107d-281a-42fe-b39b-d06fdcef9b08",
 CellID->1504748118],
Cell[28894, 674, 190, 2, 23, "Text",ExpressionUUID->"60a5cf66-2d72-4359-b078-c8c7aa7fe374",
 CellID->1534192154],
Cell[29087, 678, 177, 2, 23, "Text",ExpressionUUID->"190c5e40-18ad-4954-89d9-8b88cce72f7e",
 CellID->331382749]
}, Open  ]],
Cell[CellGroupData[{
Cell[29301, 685, 414, 6, 43, "Section",ExpressionUUID->"050882bb-c842-46dc-89bb-6b8c05da9e7e",
 CellID->1900895354],
Cell[29718, 693, 759, 10, 23, "Text",ExpressionUUID->"303ef9a7-0364-4a30-8606-d2bacfae4649",
 CellID->233998259],
Cell[30480, 705, 250, 3, 23, "Text",ExpressionUUID->"0992ce1d-de1d-45f2-97dd-45b8f921e11a",
 CellID->898102880],
Cell[30733, 710, 174, 2, 23, "Text",ExpressionUUID->"701aca24-8907-4e21-a699-0db818f59359",
 CellID->1900033044],
Cell[30910, 714, 204, 2, 23, "Text",ExpressionUUID->"fab14b54-2dd6-4458-be8e-c486e7469db0",
 CellID->773539618],
Cell[31117, 718, 207, 2, 23, "Text",ExpressionUUID->"fadc3b22-4df6-46b1-a195-6445d26be07e",
 CellID->14360788],
Cell[31327, 722, 192, 2, 23, "Text",ExpressionUUID->"9c0b2fc1-6873-4c96-abaa-174bedc55b46",
 CellID->843595452],
Cell[31522, 726, 210, 2, 23, "Text",ExpressionUUID->"905097ed-8b6e-437d-91f6-6d6fe3c1e3fa",
 CellID->621724270],
Cell[31735, 730, 205, 2, 23, "Text",ExpressionUUID->"6e6954ca-2b19-40ec-aadd-540a711d1ced",
 CellID->1811863235],
Cell[31943, 734, 216, 2, 23, "Text",ExpressionUUID->"eada9d0e-3668-4871-a5f3-159d12a5ca78",
 CellID->667276185],
Cell[32162, 738, 273, 6, 23, "Text",ExpressionUUID->"69944c11-17f9-4674-93a7-a627bad4c8cf",
 CellID->751236661],
Cell[32438, 746, 205, 3, 23, "Text",ExpressionUUID->"0b498630-d0c9-44f5-bce7-c5c4a7df4ab9",
 CellID->978200714],
Cell[32646, 751, 227, 3, 23, "Text",ExpressionUUID->"1d31adbb-e052-4dda-bd0a-e56d4e140602",
 CellID->1632082413],
Cell[32876, 756, 256, 5, 23, "Text",ExpressionUUID->"bbf8b516-fdf5-4894-bf31-5b9f84927cfc",
 CellID->600492160],
Cell[33135, 763, 235, 3, 23, "Text",ExpressionUUID->"633b3c7b-f8e7-4ae5-93f5-36a42fe9b22a",
 CellID->1446075867],
Cell[33373, 768, 216, 3, 23, "Text",ExpressionUUID->"9ec13248-4df1-4f54-9b19-a4e2e5071615",
 CellID->1124663570],
Cell[33592, 773, 254, 5, 23, "Text",ExpressionUUID->"057f59ca-c324-4b94-8455-4b55ed5e3195",
 CellID->69560096],
Cell[33849, 780, 282, 6, 23, "Text",ExpressionUUID->"92668a22-cef0-4048-a5ff-f9d8d8d2ebac",
 CellID->865429504],
Cell[34134, 788, 255, 5, 23, "Text",ExpressionUUID->"13ac46d6-ccb7-403e-aaa3-a481e40ddfb4",
 CellID->366932597],
Cell[34392, 795, 243, 3, 23, "Text",ExpressionUUID->"f6ee6d1e-e624-43ea-abfd-73c0148bb87e",
 CellID->1610607242],
Cell[34638, 800, 219, 3, 23, "Text",ExpressionUUID->"fb0d3e74-8ba5-4369-8f54-eb1f2af878af",
 CellID->444545859],
Cell[34860, 805, 278, 6, 23, "Text",ExpressionUUID->"24d49b87-151e-427a-bfac-ce559baf625e",
 CellID->386644300],
Cell[35141, 813, 201, 3, 23, "Text",ExpressionUUID->"d089c83c-3190-4dcf-9438-2fafe241454d",
 CellID->45234278],
Cell[35345, 818, 231, 3, 23, "Text",ExpressionUUID->"319454dd-a7ab-4a0e-a826-6ec3841ef1d9",
 CellID->43299308],
Cell[35579, 823, 213, 3, 23, "Text",ExpressionUUID->"d993d516-5b11-4068-9052-0dd7dfd36b7a",
 CellID->1881996870],
Cell[35795, 828, 220, 3, 23, "Text",ExpressionUUID->"9ce6fbac-cf58-41e2-baaf-285d13acd44c",
 CellID->434757427],
Cell[36018, 833, 218, 3, 23, "Text",ExpressionUUID->"2dc65fb7-0dfc-46f6-b144-7d70acc63d52",
 CellID->1228708495],
Cell[36239, 838, 239, 3, 23, "Text",ExpressionUUID->"fe046cf4-71fc-4ac1-a7a4-142547bfeb06",
 CellID->700925913],
Cell[36481, 843, 302, 6, 40, "Text",ExpressionUUID->"aaac5f44-8cdf-42d8-a124-66528a85f496",
 CellID->1514015996],
Cell[36786, 851, 238, 3, 23, "Text",ExpressionUUID->"6cb9a224-c4bc-42d5-ab28-b6e928b2c11f",
 CellID->533111469],
Cell[37027, 856, 292, 6, 23, "Text",ExpressionUUID->"ad1430a8-5aa4-4ec4-a811-2e6544fb2f78",
 CellID->702684199],
Cell[37322, 864, 224, 3, 23, "Text",ExpressionUUID->"20256108-84e4-420d-b40f-ee3defee011d",
 CellID->1000757740],
Cell[37549, 869, 253, 5, 23, "Text",ExpressionUUID->"abc0b546-9df7-4adb-b3aa-21e979087d85",
 CellID->643412876],
Cell[37805, 876, 245, 3, 23, "Text",ExpressionUUID->"35603383-03f1-49a6-8add-6262b6565b59",
 CellID->1260044287],
Cell[38053, 881, 259, 3, 23, "Text",ExpressionUUID->"c4e19431-f8ca-4d73-8551-ceb47db035ca",
 CellID->1228088542],
Cell[38315, 886, 300, 6, 23, "Text",ExpressionUUID->"53d34295-b519-4f11-be56-4c60617e228b",
 CellID->1018794077],
Cell[38618, 894, 283, 5, 23, "Text",ExpressionUUID->"c9f5ba07-834a-4702-9726-54acc401b263",
 CellID->984934608],
Cell[38904, 901, 256, 3, 23, "Text",ExpressionUUID->"797b5181-767f-4627-a144-c33e2c8b404d",
 CellID->992005580],
Cell[39163, 906, 431, 7, 57, "Text",ExpressionUUID->"40794676-6536-459a-9813-dec0ee3347c2",
 CellID->1722231399],
Cell[39597, 915, 266, 3, 23, "Text",ExpressionUUID->"a853179f-0ba7-46b8-bc8f-9628945fac20",
 CellID->1758528727],
Cell[39866, 920, 242, 3, 23, "Text",ExpressionUUID->"1fb7938a-2a7c-4382-9bfa-c7c0fb400e1c",
 CellID->1922364675],
Cell[40111, 925, 248, 3, 23, "Text",ExpressionUUID->"2881f923-a52f-45c3-8767-6bede3c41150",
 CellID->291623610],
Cell[40362, 930, 252, 3, 23, "Text",ExpressionUUID->"6e4cec90-438c-467d-a8f6-f1526940e369",
 CellID->760330816],
Cell[40617, 935, 249, 3, 23, "Text",ExpressionUUID->"e9a7f79f-25b9-41e5-a245-cb28bb829957",
 CellID->1352324862],
Cell[40869, 940, 379, 7, 40, "Text",ExpressionUUID->"5cab143e-b06a-4199-8094-5cdcd8144f9d",
 CellID->1704519433],
Cell[41251, 949, 384, 7, 40, "Text",ExpressionUUID->"592b0d24-f441-45af-bc85-0137f12a6500",
 CellID->426259451],
Cell[41638, 958, 246, 3, 23, "Text",ExpressionUUID->"0bccab2c-88cb-415a-a4eb-184c52f6a5cf",
 CellID->137146565],
Cell[41887, 963, 323, 6, 23, "Text",ExpressionUUID->"53ea927e-99fc-4eb9-b262-7a30e35910c3",
 CellID->772364724],
Cell[42213, 971, 319, 6, 23, "Text",ExpressionUUID->"e1864d5f-ec42-44be-9061-a6bbbb1b3076",
 CellID->1742753800],
Cell[42535, 979, 318, 4, 23, "Text",ExpressionUUID->"df2230bb-cf60-4284-ab7f-f5d93bbdedeb",
 CellID->933655167],
Cell[CellGroupData[{
Cell[42878, 987, 266, 4, 39, "Subsection",ExpressionUUID->"ae4fcf55-43a4-46e2-b1c4-ba477a122509",
 CellID->279383140],
Cell[43147, 993, 266, 3, 23, "Text",ExpressionUUID->"2a412812-f15e-41c6-9fc8-6559cf9aad66",
 CellID->1193181638],
Cell[43416, 998, 311, 5, 23, "Text",ExpressionUUID->"046c8634-edfb-4a49-91bf-0bd9c9321490",
 CellID->601494180],
Cell[43730, 1005, 261, 3, 23, "Text",ExpressionUUID->"1152b894-7b92-47a2-8074-16072322605c",
 CellID->1107156831],
Cell[43994, 1010, 258, 3, 23, "Text",ExpressionUUID->"5c8aec4f-41fc-4399-9c70-1ee17cb79e88",
 CellID->39057362],
Cell[44255, 1015, 264, 3, 23, "Text",ExpressionUUID->"878882b4-6655-445a-9e49-be8e6822168f",
 CellID->1454570799],
Cell[44522, 1020, 247, 3, 23, "Text",ExpressionUUID->"712bea71-2e32-405c-89be-220337802cf2",
 CellID->17581345],
Cell[44772, 1025, 268, 3, 23, "Text",ExpressionUUID->"0f862bf8-55b2-4722-a9f2-f7d0a4c2c362",
 CellID->1284405776],
Cell[45043, 1030, 323, 6, 23, "Text",ExpressionUUID->"89078f9a-41b7-475f-a543-d26759cc924f",
 CellID->502257588],
Cell[45369, 1038, 298, 4, 23, "Text",ExpressionUUID->"b520b0ca-87c3-404c-884b-ef967238530b",
 CellID->1832548806]
}, Open  ]],
Cell[CellGroupData[{
Cell[45704, 1047, 270, 4, 39, "Subsection",ExpressionUUID->"69b04467-bb92-40bf-830d-0ac61e85bc3d",
 CellID->437317168],
Cell[45977, 1053, 279, 3, 23, "Text",ExpressionUUID->"08d42fae-f581-4235-b245-41cb76dcfd6a",
 CellID->1300602542],
Cell[46259, 1058, 318, 5, 23, "Text",ExpressionUUID->"06594237-14fe-4efb-89fe-1d949d6ead77",
 CellID->2138364228],
Cell[46580, 1065, 278, 3, 23, "Text",ExpressionUUID->"fb429686-4c55-4ddb-8538-a4108835b46a",
 CellID->1348747451],
Cell[46861, 1070, 255, 3, 23, "Text",ExpressionUUID->"04186018-4b9c-4f24-b3bc-7524fe786fc5",
 CellID->1708514872],
Cell[47119, 1075, 270, 3, 23, "Text",ExpressionUUID->"e4d73c0c-8dae-448b-a29d-8e2e17e695e6",
 CellID->1005609667],
Cell[47392, 1080, 262, 3, 23, "Text",ExpressionUUID->"258e92eb-e0ee-49de-bcf2-abbe885e38c6",
 CellID->585371379],
Cell[47657, 1085, 262, 3, 23, "Text",ExpressionUUID->"489e902a-d76f-4790-986d-4ea704546254",
 CellID->714179946],
Cell[47922, 1090, 282, 4, 23, "Text",ExpressionUUID->"b231fe70-d6d0-47ad-9e37-1ef60b090e6f",
 CellID->936249339]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[48253, 1100, 461, 6, 43, "Section",ExpressionUUID->"3afa0d5d-e13e-449d-b755-2a6961b478a9",
 CellID->861871899],
Cell[48717, 1108, 859, 12, 23, "Text",ExpressionUUID->"fe484536-0d30-43a0-9599-5bae70b2ead4",
 CellID->703807478],
Cell[49579, 1122, 1081, 26, 521, "Text",ExpressionUUID->"83ad449c-5caf-4716-9ad7-7e1026b513c8",
 CellID->2007339156],
Cell[50663, 1150, 235, 3, 23, "Text",ExpressionUUID->"34347c05-1456-4bb9-a698-d152dcdb224f",
 CellID->381100522],
Cell[50901, 1155, 266, 3, 23, "Text",ExpressionUUID->"ee831266-1d3b-42c9-b6f7-c346d1c0e2d9",
 CellID->1360237900],
Cell[51170, 1160, 246, 3, 23, "Text",ExpressionUUID->"9d5fd768-a58f-43ab-9c7e-e0c337420f9a",
 CellID->1554962985],
Cell[51419, 1165, 233, 3, 23, "Text",ExpressionUUID->"4048250e-1496-4c02-bed9-ea2329bbe2f0",
 CellID->1534388552],
Cell[51655, 1170, 250, 3, 23, "Text",ExpressionUUID->"cfa26217-3cd3-4fb7-900a-1bf1a1ab7512",
 CellID->1484760288],
Cell[51908, 1175, 261, 3, 23, "Text",ExpressionUUID->"e6df5d34-6689-4ba7-9abe-cb347991e4f6",
 CellID->606182276],
Cell[52172, 1180, 278, 5, 23, "Text",ExpressionUUID->"093c5d64-261f-4f5d-9190-34398d08f165",
 CellID->443091364],
Cell[52453, 1187, 310, 12, 226, "Text",ExpressionUUID->"136dec59-b3c0-4559-8e97-cdb96d0254a7",
 CellID->1710750599],
Cell[52766, 1201, 251, 3, 23, "Text",ExpressionUUID->"d87a68b1-a976-40cd-9bf7-f8fa286438ba",
 CellID->2074251357],
Cell[53020, 1206, 309, 6, 23, "Text",ExpressionUUID->"94a96354-329e-44b8-8bad-bf2703f4d408",
 CellID->1840515348],
Cell[53332, 1214, 305, 6, 23, "Text",ExpressionUUID->"4097c7ac-d7a4-4881-8d9d-604bbb533f4e",
 CellID->1187002448],
Cell[53640, 1222, 250, 3, 23, "Text",ExpressionUUID->"828059f4-732e-4891-a0b5-a017dd2323b1",
 CellID->1974546553],
Cell[53893, 1227, 240, 3, 23, "Text",ExpressionUUID->"43497225-63c5-411e-a628-1d7546213d64",
 CellID->1139119180],
Cell[54136, 1232, 241, 3, 23, "Text",ExpressionUUID->"6cbd33e1-5676-4f2d-8e88-4bf275904c79",
 CellID->359345255],
Cell[54380, 1237, 230, 3, 23, "Text",ExpressionUUID->"b349d8ee-0335-42ee-a87a-b4809a80efe9",
 CellID->791685421],
Cell[54613, 1242, 218, 3, 23, "Text",ExpressionUUID->"b1988a51-5f05-4f51-bf51-806790e95b42",
 CellID->48193935],
Cell[CellGroupData[{
Cell[54856, 1249, 168, 2, 39, "Subsection",ExpressionUUID->"4e67a742-896b-4b13-adf2-5e3fc16bb9e9",
 CellID->394130626],
Cell[55027, 1253, 279, 3, 23, "Text",ExpressionUUID->"98118e4d-590f-4af5-98ba-2176bd7f7c20",
 CellID->1313863834],
Cell[55309, 1258, 359, 7, 23, "Text",ExpressionUUID->"5104e590-995b-44bc-93eb-fd7148cf337a",
 CellID->1682599584],
Cell[55671, 1267, 332, 6, 23, "Text",ExpressionUUID->"f91b7f49-c25e-4372-a988-326d986b9969",
 CellID->1386544592],
Cell[56006, 1275, 291, 4, 23, "Text",ExpressionUUID->"4e2387e3-3fc6-48d8-b367-855583ec234e",
 CellID->1309904147],
Cell[56300, 1281, 281, 4, 23, "Text",ExpressionUUID->"9845baba-2ca1-44eb-81bd-c27bc5bff3c5",
 CellID->1704133232],
Cell[56584, 1287, 296, 4, 23, "Text",ExpressionUUID->"cc098588-376c-4db5-a1b0-603c153dd4f3",
 CellID->377830185],
Cell[56883, 1293, 308, 4, 23, "Text",ExpressionUUID->"e27bf1a1-dede-4363-83a4-8a29b5ea42c7",
 CellID->82775116],
Cell[57194, 1299, 279, 4, 23, "Text",ExpressionUUID->"cc5830df-2add-43bb-afa9-54b1923b5b8a",
 CellID->1779455003],
Cell[57476, 1305, 296, 4, 23, "Text",ExpressionUUID->"da5e4943-ca09-46e4-a1dc-08255cc51006",
 CellID->1442967299],
Cell[57775, 1311, 271, 3, 23, "Text",ExpressionUUID->"8a49ad13-782f-46f1-9e86-332f16ac046a",
 CellID->418568722]
}, Open  ]],
Cell[CellGroupData[{
Cell[58083, 1319, 271, 4, 39, "Subsection",ExpressionUUID->"ed71ca35-3b23-4450-9de0-76347ef3716e",
 CellID->1875566729],
Cell[58357, 1325, 216, 3, 23, "Text",ExpressionUUID->"92b57599-2088-463f-88bb-86fe9518ff1b",
 CellID->1885043637],
Cell[58576, 1330, 288, 5, 23, "Text",ExpressionUUID->"25528b58-2b53-4a59-9545-365df2c50084",
 CellID->102162868],
Cell[58867, 1337, 228, 3, 23, "Text",ExpressionUUID->"7a80da0f-1b48-49d6-aece-e47573f25f28",
 CellID->1211888523]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[59144, 1346, 168, 2, 43, "Section",ExpressionUUID->"c98843ea-ff26-4b42-81ea-f9b2cf97794e",
 CellID->884946388],
Cell[59315, 1350, 178, 2, 23, "Text",ExpressionUUID->"0741315e-ad39-4880-b817-246e0b2dd675",
 CellID->1969687641],
Cell[59496, 1354, 205, 2, 23, "Text",ExpressionUUID->"efbe814b-7131-484a-9ab8-d7810f272ddb",
 CellID->1353066924],
Cell[59704, 1358, 188, 2, 23, "Text",ExpressionUUID->"b638beb1-d42f-44e2-8e2f-c180ff727109",
 CellID->1291453585],
Cell[59895, 1362, 218, 2, 23, "Text",ExpressionUUID->"d0f26120-731c-445b-acd6-a6301f42a1d2",
 CellID->843182866]
}, Open  ]],
Cell[CellGroupData[{
Cell[60150, 1369, 213, 3, 43, "Section",ExpressionUUID->"6e90b23e-8428-4d59-a6d1-764a91ae7e03",
 CellID->1908509994],
Cell[60366, 1374, 171, 2, 23, "Text",ExpressionUUID->"ffdfdb29-8d16-497d-9cc6-b2a699015637",
 CellID->890972093],
Cell[60540, 1378, 218, 3, 23, "Text",ExpressionUUID->"cec3415c-7d51-4f7c-bd62-2edc8b5c6848",
 CellID->480760495],
Cell[60761, 1383, 219, 3, 23, "Text",ExpressionUUID->"126a7efd-73a5-4890-a80e-a146942b3aa3",
 CellID->141538628],
Cell[60983, 1388, 208, 3, 23, "Text",ExpressionUUID->"e99cfc0b-7407-4e08-8705-ec904a624ca5",
 CellID->931546022],
Cell[61194, 1393, 274, 6, 23, "Text",ExpressionUUID->"b5db9497-e5ea-42e8-af02-e27c6f5583f6",
 CellID->1369491844],
Cell[61471, 1401, 277, 6, 23, "Text",ExpressionUUID->"b8cccf8c-8fc8-4ead-9ca0-70b03c104422",
 CellID->970135123],
Cell[61751, 1409, 297, 6, 23, "Text",ExpressionUUID->"b2d096ad-2f05-403a-94ba-8fab25a65af1",
 CellID->550753730],
Cell[62051, 1417, 226, 3, 23, "Text",ExpressionUUID->"b8b84652-805d-451c-8ee8-9bdf41f82b8f",
 CellID->1303020787],
Cell[62280, 1422, 210, 3, 23, "Text",ExpressionUUID->"7eb2eab8-26b1-45eb-9569-a5575be9d89a",
 CellID->1262636124],
Cell[62493, 1427, 230, 3, 23, "Text",ExpressionUUID->"99e905d6-66a7-46a1-9b0e-bfa3e241037d",
 CellID->1318057388],
Cell[62726, 1432, 230, 3, 23, "Text",ExpressionUUID->"5426e9e2-a4a4-4927-a8f6-bb5bd82e1242",
 CellID->2076891631],
Cell[62959, 1437, 201, 3, 23, "Text",ExpressionUUID->"4e16fa2b-d4ec-47f0-92af-af40777900a8",
 CellID->1502107121],
Cell[63163, 1442, 207, 3, 23, "Text",ExpressionUUID->"20b09244-e87b-4a98-ade3-218b54bea231",
 CellID->44005533],
Cell[63373, 1447, 217, 3, 23, "Text",ExpressionUUID->"4c1d4026-80c3-4963-9dd7-41326433f171",
 CellID->883257671],
Cell[63593, 1452, 226, 3, 23, "Text",ExpressionUUID->"f04f8dda-f34c-4b97-bfd8-fcbf246b3d2b",
 CellID->323616878],
Cell[63822, 1457, 227, 3, 23, "Text",ExpressionUUID->"55bf804b-f43f-41ed-a7f5-a06414c6505e",
 CellID->1773907775],
Cell[64052, 1462, 282, 6, 23, "Text",ExpressionUUID->"2bf35e39-27df-4c1e-bc43-704bbae25403",
 CellID->1019556530],
Cell[64337, 1470, 211, 3, 23, "Text",ExpressionUUID->"4b372c6c-bd81-4257-8181-97f0e260fd36",
 CellID->1423402005],
Cell[64551, 1475, 227, 3, 23, "Text",ExpressionUUID->"0eca724b-e539-4fda-baae-36a4bf244805",
 CellID->94822273],
Cell[64781, 1480, 268, 5, 23, "Text",ExpressionUUID->"4db9f504-f784-45ae-9eba-86b858626b83",
 CellID->220377184],
Cell[65052, 1487, 272, 6, 23, "Text",ExpressionUUID->"fad60397-b32d-46cb-9f47-4e07179e5d89",
 CellID->93864776],
Cell[CellGroupData[{
Cell[65349, 1497, 169, 2, 39, "Subsection",ExpressionUUID->"a5c60abc-9797-4968-98e8-b18e42f38eeb",
 CellID->1972108196],
Cell[65521, 1501, 207, 3, 23, "Text",ExpressionUUID->"448dc3af-7b78-4944-9d65-e784c8cafb15",
 CellID->1322836298]
}, Open  ]],
Cell[CellGroupData[{
Cell[65765, 1509, 173, 2, 39, "Subsection",ExpressionUUID->"05b7f943-4326-4b07-bb21-2d3d3d05f88b",
 CellID->2033920677],
Cell[65941, 1513, 236, 3, 23, "Text",ExpressionUUID->"9aebe686-d475-4aad-b5e5-6c61083fbd71",
 CellID->1872876999],
Cell[66180, 1518, 223, 3, 23, "Text",ExpressionUUID->"44bd0496-910b-42a9-9925-e4a2407b8b44",
 CellID->1363423443],
Cell[66406, 1523, 222, 3, 23, "Text",ExpressionUUID->"1a643b2d-5025-44e8-963f-f6a06474c03e",
 CellID->948909093]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[66677, 1532, 150, 3, 43, "Section",ExpressionUUID->"1f169eca-07c0-4c84-b703-1009cc145faa"],
Cell[66830, 1537, 211, 4, 23, "Text",ExpressionUUID->"4b9896af-8d20-4c5e-88c5-508022e425c0"],
Cell[CellGroupData[{
Cell[67066, 1545, 159, 3, 39, "Subsection",ExpressionUUID->"23548cdc-571f-4c28-ad74-debd070c8bb4"],
Cell[67228, 1550, 256, 6, 52, "Text",ExpressionUUID->"7fd3312d-3c73-4a5b-86cb-4795aaf4286d"],
Cell[67487, 1558, 193, 3, 23, "Text",ExpressionUUID->"9b456a18-d28c-4499-a9e4-e8eca83c207f"],
Cell[67683, 1563, 157, 3, 23, "Text",ExpressionUUID->"175ac665-ae48-48fc-9e13-08cc404fbf62"],
Cell[67843, 1568, 198, 3, 23, "Text",ExpressionUUID->"1e14e26b-4e70-47e4-bdb4-2a9b2f74204f"],
Cell[68044, 1573, 180, 3, 23, "Text",ExpressionUUID->"d5934354-446a-4eee-8ee4-62fd4705c281"],
Cell[68227, 1578, 172, 3, 23, "Text",ExpressionUUID->"56f7bd1e-298b-4364-beeb-a17d234d6892"],
Cell[68402, 1583, 184, 3, 23, "Text",ExpressionUUID->"767036d8-d67c-42bd-9098-4835c3167121"],
Cell[68589, 1588, 176, 3, 23, "Text",ExpressionUUID->"e7c5f25e-3461-420a-988b-65402567492d"],
Cell[68768, 1593, 189, 3, 23, "Text",ExpressionUUID->"3f0308e1-18fd-40a5-b64c-323100293bcb"],
Cell[68960, 1598, 167, 3, 23, "Text",ExpressionUUID->"a3707616-06ea-4e5e-915b-49fa99a26892"],
Cell[69130, 1603, 179, 3, 23, "Text",ExpressionUUID->"675bd629-d3d3-4d20-9e6b-e4acedb01873"],
Cell[69312, 1608, 262, 6, 40, "Text",ExpressionUUID->"c0abe661-dcfd-4247-b8f1-c85bde70fe97"],
Cell[69577, 1616, 238, 6, 23, "Text",ExpressionUUID->"fc156e1b-e463-4f4f-99c0-db52ecdf18fc"],
Cell[69818, 1624, 189, 3, 23, "Text",ExpressionUUID->"193c4220-0320-431e-b61b-6f3f19b6fae9"],
Cell[70010, 1629, 180, 3, 23, "Text",ExpressionUUID->"759b404f-5a33-4670-b858-5409a2541dd3"],
Cell[70193, 1634, 216, 5, 23, "Text",ExpressionUUID->"c1ca6e76-6efc-4239-a6d2-b8c92ca58abf"],
Cell[70412, 1641, 349, 7, 69, "Text",ExpressionUUID->"e9da4f46-227f-47a8-baa4-de8ded9df0ef"],
Cell[70764, 1650, 224, 5, 23, "Text",ExpressionUUID->"e6614b90-7d55-43fe-b9a6-1d3e5dc3a200"],
Cell[70991, 1657, 220, 5, 23, "Text",ExpressionUUID->"71aaa97b-a73b-49dc-b5d0-adb799fc87d2"],
Cell[71214, 1664, 406, 8, 57, "Text",ExpressionUUID->"a1947d96-d12c-46e3-a0df-bf32bb8ff4cc"],
Cell[71623, 1674, 183, 3, 23, "Text",ExpressionUUID->"b106baf5-47b0-481e-90c4-97799a41fe91"],
Cell[71809, 1679, 186, 3, 23, "Text",ExpressionUUID->"5b0604a1-0f28-43b2-87c5-89c5c0243b6f"],
Cell[71998, 1684, 180, 3, 23, "Text",ExpressionUUID->"44b7690b-7594-4c4a-b95f-8e05a7485860"]
}, Open  ]],
Cell[CellGroupData[{
Cell[72215, 1692, 172, 3, 39, "Subsection",ExpressionUUID->"78f1d16e-0f2d-424e-9575-5087f91e3d51"],
Cell[72390, 1697, 172, 3, 23, "Text",ExpressionUUID->"fa88c221-411e-4310-92ef-cbef7a3e1ce0"],
Cell[72565, 1702, 214, 6, 52, "Text",ExpressionUUID->"5fe3641b-4b58-45fe-80e7-24d1530f054d"],
Cell[72782, 1710, 288, 7, 40, "Text",ExpressionUUID->"25021f32-b4b6-4f3f-8d5b-d9ca30051389"],
Cell[73073, 1719, 201, 3, 23, "Text",ExpressionUUID->"c90090d3-75f5-4b5b-a2b2-5d98ad441f03"],
Cell[73277, 1724, 228, 5, 23, "Text",ExpressionUUID->"fb3fc892-63c1-4532-9ac8-5386149d1b90"]
}, Open  ]],
Cell[CellGroupData[{
Cell[73542, 1734, 164, 3, 39, "Subsection",ExpressionUUID->"9190aa00-6791-4f7f-ac04-818403ae96a4"],
Cell[73709, 1739, 259, 6, 52, "Text",ExpressionUUID->"f29ef3b6-bddc-46a1-bf00-e26039cce8e3"],
Cell[73971, 1747, 239, 6, 23, "Text",ExpressionUUID->"10ed6759-f923-43b1-a5d9-9ccfcafedf96"]
}, Open  ]],
Cell[CellGroupData[{
Cell[74247, 1758, 162, 3, 39, "Subsection",ExpressionUUID->"b7a3e7da-d6cc-4d0e-a5da-81442bc1d37b"],
Cell[74412, 1763, 292, 7, 23, "Text",ExpressionUUID->"7b3c7702-aa73-4e4c-af35-ca956cb5594e"]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[74753, 1776, 203, 4, 43, "Section",ExpressionUUID->"d49cefef-f2be-4382-92b2-c7bc71f1ac00"],
Cell[74959, 1782, 310, 5, 23, "Text",ExpressionUUID->"c6080b08-63ab-4e64-be1d-a4ad01c93a7f"],
Cell[75272, 1789, 184, 2, 23, "Text",ExpressionUUID->"1afd5c73-1036-4168-b288-b41c014237c1",
 CellID->94465146],
Cell[CellGroupData[{
Cell[75481, 1795, 197, 3, 39, "Subsection",ExpressionUUID->"38f94879-65d7-4463-b749-ef35d999ca03"],
Cell[75681, 1800, 722, 18, 289, "Text",ExpressionUUID->"7afff1bc-87ba-4399-a1da-8b120f7bf30f"],
Cell[76406, 1820, 129, 1, 23, "Text",ExpressionUUID->"29498e7d-9a51-45a1-93d1-87ce5442aa84",
 CellID->1421219801]
}, Open  ]]
}, Open  ]],
Cell[CellGroupData[{
Cell[76584, 1827, 164, 2, 43, "Section",ExpressionUUID->"91dc89df-08ce-4c9b-ba74-97d033092c5c",
 CellID->1563112065],
Cell[76751, 1831, 223, 3, 23, "Text",ExpressionUUID->"5cf92cae-a1c1-405c-a6b2-2920fcd36e21",
 CellID->1652935849],
Cell[76977, 1836, 229, 3, 23, "Text",ExpressionUUID->"93d11974-3043-486e-abf9-5a7caf723e7c",
 CellID->373638291],
Cell[77209, 1841, 239, 6, 81, "Text",ExpressionUUID->"1dc7f2dd-dd6b-4efb-baf5-a28ca56f9920",
 CellID->1591740512],
Cell[77451, 1849, 133, 1, 23, "Text",ExpressionUUID->"a4f8597b-312b-4137-9cc0-a472e959bbc8",
 CellID->529034666],
Cell[77587, 1852, 171, 3, 23, "Text",ExpressionUUID->"31c8f40a-18fc-42ae-8bd3-be4b0833bf93",
 CellID->903332882],
Cell[77761, 1857, 120, 1, 23, "Text",ExpressionUUID->"3a862d5f-069f-45f2-a5e7-111b6c2ee88b",
 CellID->2031112904],
Cell[77884, 1860, 198, 4, 23, "Text",ExpressionUUID->"73001319-d776-4c4c-9de8-7a0138667cf8",
 CellID->796759785],
Cell[78085, 1866, 263, 6, 81, "Text",ExpressionUUID->"e3c202ab-2d4b-4ed2-b446-1df26e109896",
 CellID->122343007],
Cell[78351, 1874, 362, 10, 197, "Text",ExpressionUUID->"4a7965f5-b514-4a4a-9692-b690b7c7cded",
 CellID->1741268195],
Cell[78716, 1886, 169, 3, 23, "Text",ExpressionUUID->"d7908dd7-584a-4ff1-a2ba-4b1bcd88a70a",
 CellID->2062155509],
Cell[78888, 1891, 134, 1, 23, "Text",ExpressionUUID->"8a92ef73-7e76-4ab7-83b1-4c70682ef970",
 CellID->409060830],
Cell[79025, 1894, 182, 4, 23, "Text",ExpressionUUID->"e000f52b-f922-41a2-a8bf-da12acd734f5",
 CellID->1705548138],
Cell[79210, 1900, 211, 5, 81, "Text",ExpressionUUID->"53207fe2-e1ce-41e3-b138-96d7ecfa6cd9",
 CellID->535835210],
Cell[79424, 1907, 116, 1, 23, "Text",ExpressionUUID->"985f2e60-4dfb-4f8a-a038-f05f4b2c9c25",
 CellID->714315324],
Cell[79543, 1910, 137, 1, 23, "Text",ExpressionUUID->"6ebc12d1-6821-4ffa-902a-fd03e1870f0a",
 CellID->1622915997],
Cell[79683, 1913, 377, 8, 139, "Text",ExpressionUUID->"0567f020-3891-49e1-bc60-202b9a99eb31",
 CellID->1159361032],
Cell[80063, 1923, 121, 1, 23, "Text",ExpressionUUID->"d9319c9f-a115-40dd-900d-767aa262f75a",
 CellID->1261735593],
Cell[80187, 1926, 179, 4, 23, "Text",ExpressionUUID->"19b8d533-ff10-405f-85b4-8e0e6286f647",
 CellID->1588140965],
Cell[80369, 1932, 166, 3, 23, "Text",ExpressionUUID->"9c37f701-340f-452b-b6a4-7ed83a7e7fee",
 CellID->800582779],
Cell[CellGroupData[{
Cell[80560, 1939, 173, 2, 39, "Subsection",ExpressionUUID->"26db4528-5cb7-421a-bf6c-c5e76c8d0c13",
 CellID->1753847131],
Cell[80736, 1943, 274, 5, 40, "Text",ExpressionUUID->"a991cfd5-c466-4015-b2bd-b82056b84dab",
 CellID->1020385269],
Cell[81013, 1950, 112, 1, 23, "Text",ExpressionUUID->"7a8c0c44-c7c6-47c5-a380-23542a0f34ab",
 CellID->335399491],
Cell[81128, 1953, 414, 10, 156, "Text",ExpressionUUID->"37a0ce8f-a5a4-468a-b4ac-ce6a6b2cb844",
 CellID->990215763],
Cell[81545, 1965, 124, 1, 23, "Text",ExpressionUUID->"f1c3d5c3-0d1e-49a9-92e4-d3df1cbf8b71",
 CellID->1383442599],
Cell[81672, 1968, 143, 1, 23, "Text",ExpressionUUID->"f0b89659-8e7d-495a-a01d-9ce1cb64e113",
 CellID->1064063738],
Cell[81818, 1971, 191, 4, 23, "Text",ExpressionUUID->"4f4b2daf-f64b-48ac-8788-4b69c0e9a0f0",
 CellID->1736581073],
Cell[82012, 1977, 349, 11, 226, "Text",ExpressionUUID->"b3c4d2c4-b2a6-4134-b85e-636b4e97ac09",
 CellID->267847534],
Cell[82364, 1990, 186, 4, 23, "Text",ExpressionUUID->"6e56f2db-798d-44f3-ba13-1e7734c478e6",
 CellID->911070327]
}, Open  ]]
}, Open  ]]
}, Open  ]]
}
]
*)

